Uri最好的TypeConverter是什么?

YBr*_*ush 6 android android-room

android.net.Uri可以使用的最佳转换方法是RoomDatabase什么?

Aks*_*iya 7

Uri使用 Room存储和检索的最佳方式是以String. 此外,我们已经拥有了API来转换UriString,反之亦然。

有2种方式:

  1. 您将处理Urito的转换,String然后将其存储起来,同样用于获取。
  2. 让 Room 使用TypeConverter.

选择方式完全取决于您和应用程序要求。也就是说,这是TypeConverterfor 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()
    }
}
Run Code Online (Sandbox Code Playgroud)