0

私はアプリケーションで画像をキャプチャするためにデフォルトのカメラアプリを開きますが、キャプチャされた画像URIは取得しません。オープンカメラ用Androidデフォルトカメラキャプチャ画像返信画像URI null

コード - -

private void initTmpUris() { 
    File proejctDirectory = new File(CameraUtil.FOLDER_PATH + File.separator + CameraUtil.FOLDER_NAME); 
    if (!proejctDirectory.exists()) { 
     proejctDirectory.mkdir(); 
    } 
    File tempDirectory = new File(proejctDirectory, "temp"); 
    if (!tempDirectory.exists()) { 
     tempDirectory.mkdir(); 
    } else { 
     // delete all old files 
     for (File file : tempDirectory.listFiles()) { 
      if (file.getName().startsWith("tmp_") 
        || file.getName().startsWith("croped_")) { 
      } 
     } 

    } 
    capturedImageUri = Uri.fromFile(new File(tempDirectory, "tmp_" 
      + String.valueOf(System.currentTimeMillis()) + ".jpg")); 

    File extraOutputFile = new File(tempDirectory, "croped_" 
      + String.valueOf(System.currentTimeMillis()) + ".jpg"); 

    extraOutputFile.setWritable(true); 
    cropImageUri = Uri.fromFile(extraOutputFile); 
} 

とコードをonActivityResultに - - 私は

case REQ_CODE_PICK_FROM_CAMERA_WITHOUT_CROP: { 

      if (resultCode == RESULT_OK) { 
       if(null!=capturedImageUri) { 
        String imagePath = capturedImageUri.getPath(); 
        File file = new File(imagePath); 
        onSingleImageSelected(reqCodeStarter, file, imagePath, 
          get_Picture_bitmap(file)); 
       } 


      } else { 
       onMediaPickCanceled(reqCodeStarter, 
         REQ_CODE_PICK_FROM_CAMERA_WITHOUT_CROP); 
      } 

     } 
     break; 

initTmpUris(); 
    Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
    intent.putExtra(MediaStore.EXTRA_OUTPUT, capturedImageUri); 
    intent.putExtra("return-data", true); 

コード格納する画像のパスを作成するための以下の私のコードですキャプチャ画像の取得URL、他のデバイスでは、samsung s7デバイスでキャプチャされたImageUriを取得します。

+1

os useがMarshmallowの場合は実行時のアクセス許可があるかどうかを確認してください – siddhesh

答えて

2

Manifestファイルのactivityタグにこのコードを追加してください。

android:configChanges="orientation|keyboardHidden|screenSize" 

現在のアクティビティを破棄して再作成することはできませんので、結果が得られます。

+1

ありがとうございます。 – Ravi