各位前辈们,不好意思想请教大家一个问题。
自从我的Android 升级至8 oreo后,我的SQLITE DB 在
SQLiteDatabase db=dbhelper.getReadableDatabase();
这段一直会有错误。
当我试着使用adb shell的工具将DB档案删除后重开APP
又能正常,但相对地里面的资料也没了。
但如果我把DB再放回databases的资夹,他又会出现错误
讯息
错误讯息如下:https://ideone.com/HYrXeB
第71行就是 getApplicationContext().openOrCreateDatabase
当然我刚开始也有建立继承SQLiteOpenHelper 但是在getReadableDatabase()那段也
会有一样的错误讯息,故我将它注解掉了。
以下是程式码:
DB CREATE:https://ideone.com/6uaQC4
然后这个是我目前的主程式:https://ideone.com/OvOi6u
然后因为在怀疑是否为CreatDB有问题,所以目前将CreatDB 注解掉,但还是有相同问
题。
然后我找过文章,也有人说可能是权限问题,所以我试着将读写EXTERNAL_STORAGE的权限
打开
以下是AndroidManifest.xml https://ideone.com/brPDHf
但还是一样的错误讯息。
在stackoverflow 也有人说使用路径,所以我也曾试过SQLiteDatabase.openDatabase去
直接带路径开启,但一样有误。
所以我已经不知道还有什么办法。
之前从kitkat升级到lollipop再到Nougat都没问题,但是这次无论我怎么试还是弄不好。
再有劳各位高手。