TypeConverter для хранения списка объектов не работал - PullRequest
0 голосов
/ 20 апреля 2020

Я вчера отправил этот вопрос. Основываясь на ответе, я создал класс 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.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...