android 4.0 以上平台选择图片报错Attempted to access a cursor after it has been closed.
来源:互联网 发布:mac os 10.12.4黑苹果 编辑:程序博客网 时间:2024/05/20 04:45
android.database.StaleDataException: Attempted to access a cursor after it has been closed.at android.app.ActivityThread.performResumeActivity(ActivityThread.java:2444)at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:2472)at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1173)at android.os.Handler.dispatchMessage(Handler.java:99)at android.os.Looper.loop(Looper.java:137)at android.app.ActivityThread.main(ActivityThread.java:4424)at java.lang.reflect.Method.invokeNative(Native Method)at java.lang.reflect.Method.invoke(Method.java:511)at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)at dalvik.system.NativeStart.main(Native Method)Caused by: android.database.StaleDataException: Attempted to access a cursor after it has been closed.
选择图片后 onActivityResult中的代码如下:
Uri uri = data.getData(); if (uri != null) { mFilePath = new URIUtils().getPathFromUri(uri); }
解决办法如注释中的所示。 4.0以上平台会自动关闭cursor
protected String getPath(Uri uri) { String filePath = ""; String[] projection = {MediaColumns.DATA }; Cursor cursor = managedQuery(uri, projection, null, null, null); if (cursor != null) { int columnIndex = cursor.getColumnIndexOrThrow(MediaColumns.DATA); cursor.moveToFirst(); filePath = cursor.getString(columnIndex); try { //4.0以上的版本会自动关闭 (4.0--14;; 4.0.3--15) if(Integer.parseInt(Build.VERSION.SDK) < 14) { cursor.close(); } }catch(Exception e) { Log.error(TAG, "error:" + e); } } return filePath; }
- android 4.0 以上平台选择图片报错Attempted to access a cursor after it has been closed.
- android 4.0 以上平台选择图片报错Attempted to access a cursor after it has been closed.
- android 4.0 以上平台选择图片报错Attempted to access a cursor after it has been closed.
- Android选择图片报错Attempted to access a cursor after it has been closed.
- Android报错 Attempted to access a cursor after it has been closed.的解决方法
- Android读取相册时报错:Attempted to access a cursor after it has been closed.
- android.database.StaleDataException: Attempted to access a cursor after it has been closed
- android开发问题:Attempted to access a cursor after it has been closed.
- android.database.StaleDataException: Attempted to access a cursor after it has been closed
- 异常:android.database.StaleDataException: Attempted to access a cursor after it has been closed
- android.database.StaleDataException: Attempted to access a cursor after it has been closed.
- android.database.StaleDataException: Attempted to access a cursor after it has been clos
- Caused by: android.database.StaleDataException: Attempted to access a cursor after it has been close
- android.database.StaleDataException: Attempted to access a cursor after it has b
- Finalizing a Cursor that has not been deactivated or closed
- This app has crashed because it attempted to access privacy-sensitive data without a usage descripti
- This app has crashed because it attempted to access privacy-sensitive data without a usage descripti
- This app has crashed because it attempted to access privacy-sensitive data without a usage descripti
- 三.指针与数组的“爱恨情仇”
- VS 2005 Release模式下调试
- 放宽心!IT骨干依然很吃香,不管国内国外,做好你的职业规划
- oracle_10g安装、使用、卸载教程
- CString、TCHAR*、char*转换
- android 4.0 以上平台选择图片报错Attempted to access a cursor after it has been closed.
- opencv下haar方法实现对视频文件的人脸检测、跟踪
- java web培训_北软教育_工作日志_6.14
- oracle_plsql语句大全
- 网络原理小结
- DataSet中多表导出到同一Excel的不同sheet中
- memmove 的实现
- C#:AccessViolationException: 尝试读取或写入受保护的内存。这通常指示其他内存已损坏。解决办法收集
- DbVisualizer破解方法和文件