大家遇到过这个异常没android.database.sqlite.SQLiteException: unable to open database file

csuhanyong 2011-03-17 09:31:01
这是什么问题导致的?

01-07 19:31:42.800: ERROR/AndroidRuntime(4530): FATAL EXCEPTION: AsyncTask #5
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): java.lang.RuntimeException: An error occured while executing doInBackground()
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at android.os.AsyncTask$3.done(AsyncTask.java:200)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at java.util.concurrent.FutureTask.setException(FutureTask.java:124)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at java.util.concurrent.FutureTask.run(FutureTask.java:137)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1068)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:561)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at java.lang.Thread.run(Thread.java:1096)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): Caused by: android.database.sqlite.SQLiteException: unable to open database file: BEGIN EXCLUSIVE;
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:158)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at android.database.DatabaseUtils.readExceptionFromParcel(DatabaseUtils.java:114)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at android.content.ContentProviderProxy.update(ContentProviderNative.java:495)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at android.content.ContentResolver.update(ContentResolver.java:707)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at android.provider.ContactsContract$Contacts.markAsContacted(ContactsContract.java:984)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at android.provider.CallLog$Calls.addCall(CallLog.java:255)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at com.android.phone.CallLogAsync$AddCallTask.doInBackground(CallLogAsync.java:165)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at com.android.phone.CallLogAsync$AddCallTask.doInBackground(CallLogAsync.java:156)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at android.os.AsyncTask$2.call(AsyncTask.java:185)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
01-07 19:31:42.800: ERROR/AndroidRuntime(4530): ... 4 more
01-07 19:31:43.183: WARN/ActivityManager(4455): Force finishing activity com.android.phone/.InCallScreen
...全文
3108 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ya_xiaohu 2012-07-04
  • 打赏
  • 举报
回复
楼主这个问题解决了吗,分享一下经验呗
csuhanyong 2011-03-21
  • 打赏
  • 举报
回复
第二种可能性比较大。[Quote=引用 3 楼 kechanghe0705 的回复:]
有两种情况:1,你的数据库文件不是有效的数据库文件 ;2,你在操作sqlite数据库时使用多线程了,但sqlite数据库是不支持多线程操作,所以你必须实现多线程同步的基质;
[/Quote]
j_f0001 2011-03-17
  • 打赏
  • 举报
回复
有两种情况:1,你的数据库文件不是有效的数据库文件 ;2,你在操作sqlite数据库时使用多线程了,但sqlite数据库是不支持多线程操作,所以你必须实现多线程同步的基质;
West_Link 2011-03-17
  • 打赏
  • 举报
回复
1、数据库文件不存在
2、没有权限打开
儿大不由爷 2011-03-17
  • 打赏
  • 举报
回复
是不是被其他的打开了

80,337

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧