无法将摩托罗拉平板电脑相机拍摄的照片存储在存储卡中



我正试图从我的android应用程序打开相机并捕获图像,但它不存储在存储卡。如果我从内置相机捕获图像,那么它将图像存储在存储卡上。使用以下代码:(尝试打开相机).

Intent intent = new Intent(
            android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
    startActivityForResult(intent, 1);

in manifest permission:

<uses-permission android:name="android.permission.CAMERA"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>

是我的代码中缺少的东西吗?

这在我的情况下有效。

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, getImageUri());
startActivityForResult(intent, TAKE_PHOTO_CODE);

和getImageUri ()

/**
 * Get the uri of the captured file
 * @return A Uri which path is the path of an image file, stored on the dcim folder
 */
private Uri getImageUri() {
    // Store image in dcim
    File file = new File(Environment.getExternalStorageDirectory() + "/DCIM", CAPTURE_TITLE);
    Uri imgUri = Uri.fromFile(file);
    return imgUri;
}

有关更多信息,请查看如何捕获图像并将其存储在原生Android相机

最新更新