Android 安卓系统中照相机捕捉的隐含意图

Android 安卓系统中照相机捕捉的隐含意图,android,android-camera,android-camera-intent,android-implicit-intent,Android,Android Camera,Android Camera Intent,Android Implicit Intent,我面临一个非常奇怪的问题。我有一个打开默认相机的隐含意图 <uses-feature android:name="android.hardware.camera" /> 有一个带有摄像头图标的图像视图,单击该图标将打开默认摄像头 <uses-feature android:name="android.hardware.camera" /> 有时单击imageview会打开相机,但有时不会。单击“上一步”按钮时,将打开默认摄影机。我对此感到困惑。这是我的代码中的问题还是

我面临一个非常奇怪的问题。我有一个打开默认相机的隐含意图

<uses-feature android:name="android.hardware.camera" />
有一个带有摄像头图标的图像视图,单击该图标将打开默认摄像头

<uses-feature android:name="android.hardware.camera" />
有时单击imageview会打开相机,但有时不会。单击“上一步”按钮时,将打开默认摄影机。我对此感到困惑。这是我的代码中的问题还是设备错误

<uses-feature android:name="android.hardware.camera" />
图像视图位于栅格视图中。当我创建拍摄图像的网格视图时。第一个图像将是相机图标,然后网格将有捕获的图像

<uses-feature android:name="android.hardware.camera" />
我正在发布我的代码:

<uses-feature android:name="android.hardware.camera" />
清单许可:

<uses-feature android:name="android.hardware.camera" />

试试这个,尽情享受

<uses-feature android:name="android.hardware.camera" />
File file = new File(Environment.getExternalStorageDirectory() + "/DCIM/", "image" + new Date().getTime() + ".png");
Uri imgUri = Uri.fromFile(file);
String imgPath = file.getAbsolutePath();

final Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, setImageUri());
startActivityForResult(intent, CAPTURE_IMAGE);

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (resultCode != Activity.RESULT_CANCELED) {
            if (requestCode == CAPTURE_IMAGE) {
                imgUser.setImageBitmap(BitmapFactory.decodeFile(imgPath));
            } else {
                super.onActivityResult(requestCode, resultCode, data);
            }
        }

    }

对于默认摄像机,如果使用了意图操作\u图像\u捕获,则无需对摄像机设置权限。添加权限,但问题是否是由于权限造成的?我认为不需要sopermission,因为您将图像存储在自己的文件夹中,而您必须添加权限的原因是图像视图的单击事件存在问题。因为现在我把它改为touch listener,它工作正常。图像视图是动态创建的