引起:java.lang.IllegalArgumentException:平台java.lang.Class annotated []需要注册显式JsonAdapter
使用带Moshi的RealmList时出现上述错误。
public class MenuModel implements RealmModel
{
@Json(name = "menugroups")
private RealmList<MenuGroupModel> menugroups = null;
}
我对此进行了一些研究,发现了以下内容:
https://github.com/realm/realm-java/issues/2711
那里的解决方案说我需要使用 RealmListAdapter 。我已将代码复制到我的项目中。但是,我不知道如何以及在何处实现此适配器。
我该如何使用它?
答案 0 :(得分:0)
转到此处: Regalia Moshi
将 RealmListAdapter 和 RealmListAdapterJsonFactory 复制到项目中(或使用链接的项目)。像这样添加适配器到你的moshi:
Moshi moshi = new Moshi.Builder()
.add(new RealmListJsonAdapterFactory())
.build();
进一步使用,如果您正在使用Retrofit:
Retrofit retrofit = new Retrofit.Builder()
.baseUrl(API.ENDPOINT)
.addConverterFactory(MoshiConverterFactory.create(moshi))
.build();