我目前正在运行数据库的开发实例 - 其结构/模式也正在处理中。因此,有时Android客户端崩溃是因为RuntimeException java.lang.RuntimeException: Could not deserialize object.
,就像内置转换器工厂期待String但收到了int等。
错误很有用,因为它可以精确定位错误来源。但问题在于,当我在Firestore后端修复数据时,它并没有立即反映在Android客户端中。该应用程序尝试使用缓存数据(无效数据)填充RecyclerView,因此每次启动时都会崩溃,直到我完全重置应用程序。
有没有办法通过使缓存无效或在发生更新数据时来处理此错误?
答案 0 :(得分:2)
您的生产代码必须能够适应Firestore中可能发生的变化。这可能不会改变,因此您应该只发送您对应用程序中处理有信心的更改。
在测试期间,如果您正在进行破坏应用的更改,只需卸载并重新安装该应用即可清除缓存。