android - 难以从第三方对象创建 @TypeConverter
问题描述
我尝试将第三方类中的对象插入房间桌子,问题是我得到了这个扩展:
RuntimeException: Unable to invoke no-args constructor for interface
org.jivesoftware.smack.packet.ExtensionElement. Registering an
InstanceCreator with Gson for this type may fix this problem.
我知道 Gson 无法从第三方类转换对象,我该怎么做呢?
我试图创建 InstanceCreator 但我得到了同样的错误(也许我没有正确创建它),这是 TypeConverter 类:
@TypeConverter
public String stringFromObject(Message message){
Gson gson = new Gson();
return gson.toJson(message);
}
@TypeConverter
public Message getObjectFromString(String jsonString){
Type listType = new TypeToken<Message>(){}.getType();
return new Gson().fromJson(jsonString, listType);
}
解决方案
推荐阅读
- sql - SQL Redshift:如何在基于另一列值的连接中使用值
- python - peewee - 动态更改架构
- git - 解决与 VS2019 + KDiff3 的冲突时,Git 标记开始出现
- qt - QTableWidget:行大小不正确
- qt - 如何在 yocto 配方中添加 qt5 应用程序?
- python - 将每个 sas 数据集转换为 pandas 中的数据框
- r - alias() 不返回任何内容,而 vif() 在 R 中返回 NAN
- java - 如何修复税率操作?
- javascript - javascript - 遍历 ViewBag 列表
- python - 对数据框的行进行分组/过滤和计算