文档章节

Attempted to access a cursor after it has been clo

塔塔米
 塔塔米
发布于 2014/02/15 15:06
字数 202
阅读 650
收藏 0

http://blog.csdn.net/ID19870510/article/details/7682030

[html]  view plain copy
  1. android.database.StaleDataException: Attempted to access a cursor after it has been closed.  
  2. at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2444)  
  3. at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2472)  
  4. at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1173)  
  5. at android.os.Handler.dispatchMessage(Handler.java:99)  
  6. at android.os.Looper.loop(Looper.java:137)  
  7. at android.app.ActivityThread.main(ActivityThread.java:4424)  
  8. at java.lang.reflect.Method.invokeNative(Native Method)  
  9. at java.lang.reflect.Method.invoke(Method.java:511)  
  10. at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)  
  11. at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)  
  12. at dalvik.system.NativeStart.main(Native Method)  
  13. Caused by: android.database.StaleDataException: Attempted to access a cursor after it has been closed.  

选择图片后 onActivityResult中的代码如下:

[java]  view plain copy
  1. Uri uri = data.getData();  
  2.                if (uri != null)  
  3.                {  
  4.                    mFilePath = new URIUtils().getPathFromUri(uri);  
  5.                }  

解决办法如注释中的所示。 4.0以上平台会自动关闭cursor
[java]  view plain copy
  1. protected String getPath(Uri uri)  
  2.     {  
  3.         String filePath = "";  
  4.   
  5.         String[] projection = {MediaColumns.DATA };  
  6.         Cursor cursor = managedQuery(uri,  
  7.             projection,  
  8.             null,  
  9.             null,  
  10.             null);  
  11.   
  12.         if (cursor != null)  
  13.         {  
  14.             int columnIndex = cursor.getColumnIndexOrThrow(MediaColumns.DATA);  
  15.             cursor.moveToFirst();  
  16.             filePath = cursor.getString(columnIndex);  
  17.             try  
  18.             {  
  19.                 //4.0以上的版本会自动关闭 (4.0--14;; 4.0.3--15)  
  20.                 if(Integer.parseInt(Build.VERSION.SDK) < 14)  
  21.                 {  
  22.                     cursor.close();  
  23.                 }  
  24.             }catch(Exception e)  
  25.             {  
  26.                 Log.error(TAG, "error:" + e);  
  27.             }  
  28.         }  
  29.   
  30.         return filePath;  
  31.     }  

本文转载自:http://blog.csdn.net/ID19870510/article/details/7682030

塔塔米
粉丝 11
博文 660
码字总数 17397
作品 0
朝阳
程序员
私信 提问
UI->ExpandableListView->Cursor FC

01-03 11:09:41.141: W/dalvikvm(15635): threadid=1: thread exiting with uncaught exception (group=0x40c7a930) 01-03 11:09:41.141: E/AndroidRuntime(15635): FATAL EXCEPTION: main 0......

iptvphone
2014/01/03
273
0
求助,这个是怎么回事?

WebApp[http://localhost:8080] org.apache.openjpa.util.InternalException: Multiple concurrent threads attempted to access a single broker. By default brokers are not thread safe;......

轩辕剑
2014/09/05
83
0
崩溃(使用相册提示)

[access] This app has crashed because it attempted to access privacy-sensitive data without a usage description. The app's Info.plist must contain an NSPhotoLibraryUsageDescript......

no_wait
2016/12/19
0
0
OMS中关于PLAN_HASH_VALUE为0的解读

In this Document Purpose Scope Details APPLIES TO: Oracle Database - Enterprise Edition -Version 10.1.0.2 and later Oracle Database - Standard Edition -Version 10.1.0.2 and late......

ElanAir
2018/06/26
0
0
MongoDB -- 介绍、安装、库管理、备份以及恢复

Mongodb 介绍 文档型数据库 C++语言编写,分布式文件存储的开源数据库系统,属于NoSQL 在高负载的情况下,可以添加更多的节点,保证服务器的性能 为WEB应用提供可扩展的高性能数据存储解决方...

liqilong1991
2017/03/13
0
0

没有更多内容

加载失败,请刷新页面

加载更多

我最喜欢的Mybatis 3.5新特性——Optional支持

Mybatis 3.5 发布有段时间了,终于支持了 Optional ,这么实用的特性,竟然还没人安利……于是本文出现了。 文章比较简单,但非常实用,因为能大量简化恶心的判空代码。 WARNING 由于本文非常...

周立_ITMuch
17分钟前
4
0
Android 开发工具推荐

简评: 自己过去在 Android 开发中发现的好工具,在这里分享给大家。: ) Library methods count 每一个 Android App 的开发中都会用到很多的库,这个工具能够让你看到不同库的大小和,帮助你...

极光推送
17分钟前
0
0
高并发解决方案

我们通常衡量一个Web系统的吞吐率的指标是QPS(Query Per Second,每秒处理请求数),解决每秒数万次的高并发场景,这个指标非常关键。举个例子,我们假设处理一个业务请求平均响应时间为100...

孤狼悲月
23分钟前
1
0
Kubernetes 中的渐进式交付:蓝绿部署和金丝雀部署

本文首发于:Jenkins 中文社区 渐进式交付是持续交付的下一步, 它将新版本部署到用户的一个子集,并在将其滚动到全部用户之前对其正确性和性能进行评估, 如果不匹配某些关键指标,则进行回...

Jenkins中文社区
28分钟前
3
0
大数据辟谣:布洛芬用药不慎可能致死?如此标题党居心何在

相信很多人看到一则“布洛芬用药不慎可能致死”的消息后,内心开始慌乱了。 (新闻来源:微博热搜排行榜) 毕竟健康是每一个人最关注的话题,而布洛芬也是很多人止痛(发烧头痛、喉咙痛、牙痛...

forespider
32分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部