android.os.NetworkOnMainThreadException异常

龙之天使 2014-01-02 01:55:45
当执行语句
android.database.sqlite.SQLiteOpenHelper.getReadableDatabase()时,
报android.os.NetworkOnMainThreadException异常。
求大神指教。。。。
...全文
147 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
龙之天使 2014-01-02
  • 打赏
  • 举报
回复
引用 3 楼 xiaanming 的回复:
[quote=引用 2 楼 u013202496 的回复:] [quote=引用 1 楼 xiaanming 的回复:] 你好,执行这句话不会出这个异常吧、这个异常主要是网络操作在主线程里面,你另外开一个线程来执行耗时操作就行了,希望对你有帮助 楼主帮忙戳一下http://vote.blog.csdn.net/blogstaritem/blogstar2013/xiaanming
debug时,程序走到这句话的时候就抛出这个异常了。。。[/quote] 那就将数据库操作的代码放在子线程中去执行[/quote] 问题已解决。。 主线程入口处加 StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() .detectDiskReads() .detectDiskWrites() .detectNetwork() .penaltyLog() .build()); StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder() .detectLeakedSqlLiteObjects() //探测SQLite数据库操作 .detectLeakedClosableObjects() .penaltyLog() .penaltyDeath() .build()); 之前加错位置了。。。
xiaanming 2014-01-02
  • 打赏
  • 举报
回复
引用 2 楼 u013202496 的回复:
[quote=引用 1 楼 xiaanming 的回复:] 你好,执行这句话不会出这个异常吧、这个异常主要是网络操作在主线程里面,你另外开一个线程来执行耗时操作就行了,希望对你有帮助 楼主帮忙戳一下http://vote.blog.csdn.net/blogstaritem/blogstar2013/xiaanming
debug时,程序走到这句话的时候就抛出这个异常了。。。[/quote] 那就将数据库操作的代码放在子线程中去执行
龙之天使 2014-01-02
  • 打赏
  • 举报
回复
引用 1 楼 xiaanming 的回复:
你好,执行这句话不会出这个异常吧、这个异常主要是网络操作在主线程里面,你另外开一个线程来执行耗时操作就行了,希望对你有帮助 楼主帮忙戳一下http://vote.blog.csdn.net/blogstaritem/blogstar2013/xiaanming
debug时,程序走到这句话的时候就抛出这个异常了。。。
xiaanming 2014-01-02
  • 打赏
  • 举报
回复
你好,执行这句话不会出这个异常吧、这个异常主要是网络操作在主线程里面,你另外开一个线程来执行耗时操作就行了,希望对你有帮助 楼主帮忙戳一下http://vote.blog.csdn.net/blogstaritem/blogstar2013/xiaanming

80,472

社区成员

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

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