Для моего приложения у меня есть представление переработчика, которое я использую LiveData для заполнения.Каждый элемент в представлении переработчика является объектом Event, который я создал.Я использую Room и Dao для хранения этих событий и создания уровня абстракции между SQL и репозиторием и контроллером пользовательского интерфейса, но проблема в том, что Dao может только сериализовать типы примитивов в JSON.Я создал конвертеры типов для преобразования между ArrayList и json, но мне нужно иметь возможность конвертировать между LiveData [ArrayList [Event]], чтобы это работало.
Пока что это то, что у меня есть:
@TypeConverter
public static String fromEvent(LiveData<ArrayList<Event>> events){
Gson gson = new Gson();
String json = gson.toJson(events);
return json;
}
@TypeConverter
public static LiveData<ArrayList<Event>> fromEventString (String value){
Type eventType = new TypeToken<LiveData<ArrayList<Event>>>() {}.getType();
return new Gson().fromJson(value, eventType);
}
Как мне выполнить преобразование между этими двумя типами данных с помощью библиотеки Google Gson?Lol Я, очевидно, не слишком опытен с этим.
Спасибо за любую помощь !!