我正在对其移动应用中使用的客户端sqlite数据库进行更新。出于某种原因,我正在研究这个最新的更新,在较新的Android设备上,它表示数据库在尝试执行某些查询时已损坏。 (我说一些是因为它从数据库中加载了初始类别,但是当我尝试查看子类别或进行产品搜索时,这就是它何时中断。)
当我在Pixel手机上运行时,我遇到了这些错误:
E / ProductDatabase:数据库已创建 E / SQLiteLog:(11)[8201f4e1c5]第61982行的数据库损坏 E / SQLiteLog:(11)语句在17处中止:[SELECT cast(Name as text)as Name FROM ProductType ORDER BY SortOrder]数据库磁盘映像格式错误 E / DefaultDatabaseErrorHandler:sqlite在数据库上报告的损坏:/data/user/0/com.client.client/databases/products.sqlite E / DefaultDatabaseErrorHandler:删除数据库文件:/data/user/0/com.client.client/databases/products.sqlite
但是,
所以我非常相信它不会成为一个损坏的sqlite文件的问题。我昨天在一个论坛上看到了一些关于它如何破坏副本的事情,或者它可能是新版Android版的权限问题,但我不能为我的生活,再次找到这个页面或任何其他提到这个的页面。
可能发生什么事?我已经清理并重建了项目并从仿真手机中无数次卸载了应用程序,在Java中使用数据库版本,尝试删除数据库onUpgrade并且没有任何作用。我不是一个Android开发人员,只是一个沮丧的前端开发人员试图进行一些简单的数据库更新......