Android 7.0调用相机崩溃详解及解决办法
更新时间:2016年12月15日 16:52:11 作者:晓果博客
这篇文章主要介绍了 Android 7.0调用相机崩溃详解及解决办法的相关资料,需要的朋友可以参考下
Android 7.0调用相机崩溃解决办法
错误提示:
android.os.FileUriExposedException: file:///storage/emulated/0/DCIM/IMG_1041503431.jpg exposed beyond app through ClipData.Item.getUri()
处理方式
/** * Open camera */ private void showCameraAction() { if (ContextCompat.checkSelfPermission(getContext(), Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { requestPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE, getString(R.string.mis_permission_rationale_write_storage), REQUEST_STORAGE_WRITE_ACCESS_PERMISSION); } else { Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); if (intent.resolveActivity(getActivity().getPackageManager()) != null) { try { mTmpFile = FileUtils.createTmpFile(getActivity()); } catch (IOException e) { e.printStackTrace(); } if (mTmpFile != null && mTmpFile.exists()) { /*获取当前系统的android版本号*/ int currentapiVersion = android.os.Build.VERSION.SDK_INT; Log.e("currentapiVersion","currentapiVersion====>"+currentapiVersion); if (currentapiVersion<24){ intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(mTmpFile)); startActivityForResult(intent, REQUEST_CAMERA); }else { ContentValues contentValues = new ContentValues(1); contentValues.put(MediaStore.Images.Media.DATA, mTmpFile.getAbsolutePath()); Uri uri = getContext().getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,contentValues); intent.putExtra(MediaStore.EXTRA_OUTPUT, uri); startActivityForResult(intent, REQUEST_CAMERA); } } else { Toast.makeText(getActivity(), R.string.mis_error_image_not_exist, Toast.LENGTH_SHORT).show(); } } else { Toast.makeText(getActivity(), R.string.mis_msg_no_camera, Toast.LENGTH_SHORT).show(); } } }
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
相关文章
Android 使用jarsigner给apk签名的方法详细介绍
这篇文章主要介绍了Android 使用jarsigner给apk签名的方法详细介绍的相关资料,APP 完成需要在一些APP 商店进行上传审核,供用户下载使用,APP 需要签名认证,需要的朋友可以参考下2016-12-12Android开发中DatePicker日期与时间控件实例代码
本文通过实例代码给大家介绍了Android开发中DatePicker日期与时间控件,代码简单易懂,非常不错,具有参考借鉴价值,需要的朋友可以参考下2017-08-08android studio无法添加 bmob sdk依赖问题及解决方法
这篇文章主要介绍了android studio无法添加 bmob sdk依赖,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-05-05Android开发adb.exe'' and can be executed.错误解决方法
这篇文章主要介绍了Android开发adb.exe' and can be executed.错误解决方法,本文分析了问题的可能原因并给出了排查步骤,需要的朋友可以参考下2015-06-06详解Android中使用Notification实现进度通知栏(示例三)
这篇文章主要介绍了详解Android中使用Notification实现进度通知栏(示例三),具有一定的参考价值,有兴趣的可以了解一下。2016-12-12
最新评论