转换android.net.Uri
可以与RoomDatabase
一起使用的最佳方法是什么?
答案 0 :(得分:2)
使用Room存储和检索Uri
的最佳方法是以String
的形式保留它。此外,我们已经有API将Uri
转换为String
,反之亦然。
有两种方式:
Uri
到String
的转换,然后将其存储并同样用于获取。TypeConverter
为您执行此操作。 选择方式完全是您的选择和应用程序要求。也就是说,这里是TypeConverter
< - >的Uri
String
:
class UriConverters {
@TypeConverter
fun fromString(value: String?): Uri? {
return if (value == null) null else Uri.parse(value)
}
@TypeConverter
fun toString(uri: Uri?): String? {
return uri.toString()
}
}