报错信息:
CrashHandler.java:uncaughtException:66:android.os.FileUriExposedException
报错场景:调用系统的相机。测试机为Android7.0系统。开发工具为AndroidStudio3.0.1
先看看Activity中原来的代码:(报错代码)
//
if (ContextCompat.checkSelfPermission(mContext, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) {
ActivityCompat.requestPermissions(MainActivity.this, new String[]{Manifest.permission.CAMERA}, 1);
} else if (ContextCompat.checkSelfPermission(mContext, Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED) {
File file = getSaveFile();
saveFilePath(file.getAbsolutePath());
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file));

本文详细探讨了Android应用中遇到的FileUriExposedException错误,主要出现在使用相机功能时。通过分析错误原因,提出了避免直接暴露文件URI的安全策略,包括使用FileProvider和设置FLAG_GRANT_READ_URI_PERMISSION,以确保应用在分享文件时遵循Android的安全规范。
最低0.47元/天 解锁文章
270

被折叠的 条评论
为什么被折叠?



