android basehandler,如何使用DefaultDatabaseErrorHandler处理Android中的数据库损坏

我的应用程序的一些实时用户遇到SQLite数据库损坏.当我们从用户收集日志时,我们发现以下详细信息:

E/SQLiteLog(14085): (11) database corruption at line 57189 of [b3bb660af9]

E/SQLiteLog(14085): (11) Invalid page count: nPage: 52, nPageFile: 50

E/SQLiteLog(14085): (11) lockBtree() error, rc: 11, printing out first page (size: 32768) of DB /data/data/com.app.testpackagename/files//db/statictext_v3.0_DE.db

E/SQLiteLog(14085): (11) Page (1) has been corrupted

E/SQLiteLog(13318): (11) database disk image is malformed

E/DefaultDatabaseErrorHandler(13318): Corruption reported by sqlite on database: /data/data/com.app.testpackagename/files//db/statictext_v3.0_DE.db

E/SQLiteLog(13318): (11) database corruption at line 57189 of [b3bb660af9]

E/SQLiteLog(13318): (11) Invalid page count: nPage: 52, nPageFile: 50

E/SQLiteLog(13318): (11) lockBtree() error, rc: 11, printing out first page (size: 32768) of DB /data/data/com.app.testpackagename/files//db/statictext_v3.0_DE.db

E/SQLiteLog(13318): (11) Page (1) has been corrupted

损坏的数据库是静态数据库(它有预加载的记录,我们没有做任何插入,更新,更改,删除除了从中选择数据.

这个数据库是我的应用程序的资产,我将它安装到设备并获取其对象

this.staticDb = SQLiteDatabase.openDatabase(AppDelegate.getFileDirectory() + "/" + SDCARD_FOLDER_NAME +DB_FOLDER_NAME + "/" + Dbpath, null, SQLiteDatabase.NO_LOCALIZED_COLLATORS | SQLiteDatabase.OPEN_READONLY);

我想通过使用此类的onCorruption方法来处理此异常,但是没有获得任何适当的实现文档.在我的情况下,我可以使用这个课吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值