2017-02-21 47 views
0

請看下面的代碼。如何將圖片保存在內存中(不在內部存儲)

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
    startActivityForResult(intent, PICK_FROM_CAMERA); 

此代碼用於調用攝像頭功能。 拍攝照片後,onActivityResult方法將我返回給Uri,以便我可以獲取圖片內部存儲的絕對路徑。但是,我想用這張照片只是爲了臨時使用。也就是說,我不想將圖片存儲在內部存儲中。我需要絕對路徑將圖片製作成File對象。那麼,有沒有辦法將圖片存儲在分配給我的應用程序的內存中?

public void onActivityResult(int requestCode, int resultCode, Intent data){ 
    super.onActivityResult(requestCode, resultCode, data); 

    if(resultCode != RESULT_OK) 
     return; 

    if(requestCode == PICK_FROM_CAMERA){ 

     imageUri = data.getData(); 
     Log.d("메시지", "uri = "+imageUri); 


     Cursor c = this.getContentResolver().query(imageUri, null, null, null, null); 
     c.moveToNext(); 
     absolutePath = c.getString(c.getColumnIndex(MediaStore.MediaColumns.DATA)); 

    } 
} 

回答

0

爲此,您可以使用緩存目錄:

File storagePath = new File(getCacheDir() + "/" + "YOUR_FILE_NAME.JPG"); 
+0

的圖片,只要我拍張照片存儲在庫......我想阻止它.. – heesu

相關問題