5.0好好的可以读数据库,换成7.0就总是未知错误:

Failed to open database '/storage/emulated/0/Xinguanjia/download.db'.android.database.sqlite.SQLiteCantOpenDatabaseException: unknown error (code 14): Could not open databaseat android.database.sqlite.SQLiteConnection.nativeOpen(Native Method)at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:209)at android.database.sqlite.SQLiteConnection.open(SQLiteConnection.java:193)at android.database.sqlite.SQLiteConnectionPool.openConnectionLocked(SQLiteConnectionPool.java:463)at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:185)at android.database.sqlite.SQLiteConnectionPool.open(SQLiteConnectionPool.java:177)at android.database.sqlite.SQLiteDatabase.openInner(SQLiteDatabase.java:808)at android.database.sqlite.SQLiteDatabase.open(SQLiteDatabase.java:793)at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:696)at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:711)at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:704)at com.xinguanjia.xinguanjia.utils.DatabaseHelper.openOrCreateDatabase(DatabaseHelper.java:38)at com.xinguanjia.xinguanjia.utils.DatabaseHelper.getData(DatabaseHelper.java:109)at com.xinguanjia.xinguanjia.ui.fragment.UserCenterFragment.init(UserCenterFragment.java:37)at com.xinguanjia.xinguanjia.ui.fragment.UserCenterFragment.onCreateView(UserCenterFragment.java:31)at android.support.v4.app.Fragment.performCreateView(Fragment.java:2080)at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1108)at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1290)at android.support.v4.app.FragmentManagerImpl.moveToState(FragmentManager.java:1272)at android.support.v4.app.FragmentManagerImpl.dispatchActivityCreated(FragmentManager.java:2149)at android.support.v4.app.FragmentController.dispatchActivityCreated(FragmentController.java:201)at android.support.v4.app.FragmentActivity.onStart(FragmentActivity.java:600)at android.support.v7.app.AppCompatActivity.onStart(AppCompatActivity.java:178)at android.app.Instrumentation.callActivityOnStart(Instrumentation.java:1249)at android.app.Activity.performStart(Activity.java:6696)at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2612)at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2710)at android.app.ActivityThread.-wrap12(ActivityThread.java)at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1461)at android.os.Handler.dispatchMessage(Handler.java:102)at android.os.Looper.loop(Looper.java:154)at android.app.ActivityThread.main(ActivityThread.java:6088)at java.lang.reflect.Method.invoke(Native Method)at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:886)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)

然后各种Google各种stackoverflow各种各种之后,没有一个行得通的。

然后翻源码也因道行不深没找到有价值的信息。

转念一想虽然声明了权限,但7.0毕竟是最最最最新的系统,会不会是权限不够的问题。

打开设置->应用->应用权限,

果然啥权限也没有

打开文件读写权限,好了……

看来是权限问题。

但是总不能让人家每次都自己打开权限吧……

于是乎继续……Google又上不去了,百度吧。

貌似6.0以后要动态申请权限了。

if (ContextCompat.checkSelfPermission(this,Manifest.permission.WRITE_EXTERNAL_STORAGE)!= PackageManager.PERMISSION_GRANTED) {ActivityCompat.requestPermissions(this,new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE},MY_PERMISSIONS_REQUEST_WRITE_EXTERNAL_STORAGE);} else {startApp();}

强制获取权限就好了。

但是!

明明权限已经获取到了

第一次运行却还报错,只有重启后才能行。

怎么回事呢?

我想到了会不会是DatabaseHelper的静态变量的问题

然后没有查到☺

解决 Android 7.0 SQLiteCantOpenDatabaseException: unknown error (code 14)相关推荐

  1. couldn't register *** with the bootstrap server. Error: unknown error code.

    Couldn't register com.gdou.zhy.zhysimpleTable with the bootstrap server. Error: unknown error code. ...

  2. Couldn't register com.zyg.ios.XXX with the bootstrap server. Error: unknown error code.

    运行应用突然崩溃,然后再次运行就出现了如下错误: Couldn't register com.zyg.ios.XXX with the bootstrap server. Error: unknown ...

  3. 剖析Picasso加载压缩本地图片流程(解决Android 5.0部分机型无法加载本地图片的问题)

    之前项目中使用Picasso遇到了一个问题:在Android 5.0以上版本的部分手机上使用Picasso加载本地图片会失败.为了解决这个问题,研究了一下Picasso加载和压缩本地图片的流程,才有了 ...

  4. android picasso 显示本地图片,剖析Picasso加载压缩本地图片流程(解决Android 5.0部分机型无法加载本地图片的问题)...

    之前项目中使用Picasso遇到了一个问题:在Android 5.0以上版本的部分手机上使用Picasso加载本地图片会失败.为了解决这个问题,研究了一下Picasso加载和压缩本地图片的流程,才有了 ...

  5. android5.0 广播失效,解决Android 8.0及以上系统接收不到广播的问题

    最近把自己的手机系统升级到了android 8.0,然后以前能正常运行的项目,莫名其妙的出了问题,有个地方广播接收不到了,然后分别在6.0和7.0的设备上运行了项目,发现一切正常,擦,估计是高版本系统 ...

  6. 解决 Unable to translate SQLException with Error code ‘17059‘, will now try the fallback translator

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 1.报错: Unable to translate SQLException with Error ...

  7. 解决Android 8.0 WebView回退失效(判断canGoBack()和调用goBack())

    前言 最新开发项目使用WebView的时候发现华为手机判断是否能回退(canGoBack)的时候失效了,无论打开多少层网页,点击返回按钮都会关闭Activity,一开始以为是华为手机的问题,然后用其他 ...

  8. android微信电话锁屏,解决 Android 7.0 系统中,微信无法在锁屏画面显示

    文章版块:HTC One A9 在 Android 7.0 系统中htc手机微信怎么截屏htc手机微信怎么截屏,会出现微信无法在锁屏画面显示的状况.建议您进行下面修改就可以解决: 进入"HT ...

  9. 解决Android 7.0及以上版本文件暴露异常exposed beyond app through Intent.getData()的方法

    转载:https://www.icode9.com/content-4-619191.html 我们在APP升级的时候进行下载安装,却在Android 7.0及以上版本会报错 android.os.F ...

  10. Net Framework 2.0 MSI returned error code 1603解决方法

    出现这种情况的原因,主要是用ghost做的系统,有很多系统中把ie给绑架了.下面的截图就是ghost做的系统中注册表的显示,通过上面的方法就可以解决这种Microsoft .NET Framework ...

最新文章

  1. 的函数原型_相信我,跟着这个文章学习JS原型,你一定能看得懂
  2. 啊哈算法中的Dijkstra最短路算法(好理解!!!)
  3. 达摩院十大科技趋势发布:2020 非同小可!
  4. java ee me se_java EE ME SE有什么关系
  5. linux驱动 cdev,inode结构体
  6. c++ string 字符_C/C++知识分享:C++标准库之 string 类型,各种运算全部掌握
  7. smart原则_《红楼梦》凤姐做领导为什么积劳成疾?只因为不懂SMART原则
  8. 教学计划计算机,计算机教学计划模板
  9. Linux环境安装配置Swftools
  10. 电大计算机专业毕业自我鉴定,电大毕业生计算机专业自我鉴定
  11. linux usb摄像头 监控软件,Linux下的motion detection(最简单的办公室监控系统)
  12. Flutter之Container 简单分析
  13. selenium1、selenium2 示例代码(java版)
  14. 子列和列_最大子列和的四种算法总结
  15. 程序员常用软件介绍--持续更新
  16. 冷冻莴苣的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  17. 【python入门小知识】实现人名全大写,全小写,首字母大写
  18. 三星手机和计算机如何连接打印机,三星打印机连接到电脑没反应怎么办
  19. supervisord如何优雅的新加服务
  20. STM32CubeIDE HAL库操作IIC (二)案例篇(MPU9250)

热门文章

  1. 如何玩转YouTube
  2. 在 LaTeX 中插入表格
  3. 本文介绍如何实现对应用加锁的功能,无须root权限
  4. seo与sem的区别在哪里
  5. 美股全线收涨 特斯拉涨超7% 瑞幸大跌近13%
  6. Win10怎样禁用触控板
  7. 电脑本地连接,电脑出现多个“本地连接”的解决方法
  8. python利用PIL及openpyxl实现图片转为excel表格
  9. 如何正确的将拼多多的买家晒图采集并保存
  10. dsp中C语言线性缓冲,TI C64x+ DSP CACHE 一致性分析与维护