2017-08-17 30 views

回答

1

你似乎是混合整数标志。您可以致电openOrCreateDatabase() method in Context。该方法不采用SQLiteDatabase标志,而是Context标志。这些标志的解释是不同的,当你的目标SDK是牛轧糖或更高的时候,你会得到这个异常。

openDatabase() static method in SQLiteDatabase需要在标志,如SQLiteDatabase.OPEN_READONLY | SQLiteDatabase.CREATE_IF_NECESSARY

虽然考虑使用SQLiteOpenHelper。它使您的数据库管理更容易,您可以拨打getReadableDatabase()来表明您需要一个只读数据库。

+0

谢谢。为我工作 – Anuradha

0

世界上可读的文件可能是一个安全漏洞。所以谷歌首先弃用它,然后彻底删除它。 MODE_WORLD_READABLE

已弃用版本至Android M。但是在Android N中不再支持它并引发SecurityException。

,以便将错误指示,`

MODE_WORLD_READABLE不支持

. Remove that flag from your getSharedPreferences()call, replacing it with MODE_PRIVATE或0.`

+1

OP没有明确的标志,也没有调用'getSharedPreferences()' – laalto