首页 > 解决方案 > 为什么有时可以有时不能在android oppo上捕获图像

问题描述

捕获图像后,来自onActivityResult的数据有时为空,有时不是。我在 Oppo a3s 上做过。它在三星或华为等其他设备上运行良好。存储未满。

权限已经通过相机处理,读写外部存储。

这是启动相机的代码:

File file = MediaUtil.getPictureFile(mActivity);
mCaptureFilePath = file.getAbsolutePath();
Uri uriSavedImage = FileProvider.getUriForFile(mActivity,mActivity.getPackageName() + ".provider",
                        file);

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
List<ResolveInfo> resolvedIntentActivities = mActivity.getPackageManager()
                        .queryIntentActivities(intent,
                                PackageManager.MATCH_DEFAULT_ONLY);
for (ResolveInfo resolvedIntentInfo : resolvedIntentActivities) {
    String packageName = resolvedIntentInfo.activityInfo.packageName;

    mActivity.grantUriPermission(packageName, uriSavedImage,
                            Intent.FLAG_GRANT_WRITE_URI_PERMISSION |
                                    Intent.FLAG_GRANT_READ_URI_PERMISSION);
}
intent.putExtra(MediaStore.EXTRA_OUTPUT, uriSavedImage);
mActivity.startActivityForResult(intent, OPEN_CAMERA);

错误

java.lang.RuntimeException:无法恢复活动{goldenwesth.ordhub/com.westh.ordhub.ui.activity.AddContributePhotoActivity}:java.lang.RuntimeException:传递结果失败ResultInfo{who=null, request=4, result=- 1、data=null}到activity

标签: javaandroidoppo

解决方案


推荐阅读