我正在实现一个应用程序,它请求所有GoogleFonts(API:https://www.googleapis.com/webfonts/v1/webfonts?key=)。
因此,我使用FontsContractCompat.FontRequestCallback
来检索TypeFace
类型的对象。每个检索到的字体都被添加到List<TypeFace>
中。
现在我想把这个列表存储到一个房间数据库中。我想把TypeFace-Object序列化成一个字符串,然后把它存储在数据库中就足够了。
问题是,当我加载序列化的字符串并尝试将i反序列化回TypeFace-object时,应用程序崩溃。
Typeface typeface = new Gson().fromJson(item.getTypefaceString(), Typeface.class);
mTextName.setTypeface(typeface); // <-- Here it crashes
是否有任何解决方案来存储TypeFace对象在房间数据库?
提前感谢!
1条答案
按热度按时间34gzjxbg1#
logcat中的错误是:
一个序列化的TypeFace-object看起来像这样:
我认为,TypeFace对象不能被序列化,然后再反序列化回来。
我需要找到一种方法来持久化我的应用程序中的TypeFaces列表。否则,每次打开应用程序时,所有字体都将从Google的字体API请求。大约有1500种字体,因此此过程需要时间。