Я вчера отправил этот вопрос. Основываясь на ответе, я создал класс TypeConverter
для своего проекта, но получаю ту же ошибку. Вот моя работа после некоторых исследований. Сначала я создал следующий класс:
class GroupTypeConverters {
companion object{
@TypeConverter
@JvmStatic
fun stringToGroups(json:String) : List<Group>{
val gson= Gson()
val type: Type = object : TypeToken<List<Group>>() {}.type
return gson.fromJson(json, type)
}
@TypeConverter
@JvmStatic
fun groupsToString(list: List<Group>): String{
val gson = Gson()
val type = object : TypeToken<List<Group>>() {}.type
return gson.toJson(list, type)
}
}
}
А затем я добавил его с помощью аннотации @TypeConverters
к классу, представляющему базу данных моей комнаты:
@Database(entities = [Country::class, Group::class],version= 1, exportSchema = false)
@TypeConverters(GroupTypeConverters::class)
abstract class MyRoomDatabase: RoomDatabase() { .. }
Но когда я перестраиваю проект, я все еще получаю ту же ошибку:
Cannot figure out how to save this field into database. You can consider adding a type converter for it.