2017-02-21 91 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