android 相机路径,android – 如何获取刚从相机捕获的图像路径
這對我有用……
碼:
Uri selectedImageUri = data.getData();
selectedImagePath = getRealPathFromURI(selectedImageUri);
方法:getRealPathFromURI()
//----------------------------------------
/**
* This method is used to get real path of file from from uri
*
* @param contentUri
* @return String
*/
//----------------------------------------
public String getRealPathFromURI(Uri contentUri)
{
try
{
String[] proj = {MediaStore.Images.Media.DATA};
Cursor cursor = managedQuery(contentUri,proj,null,null);
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
}
catch (Exception e)
{
return contentUri.getPath();
}
}
編輯:
正如我在一些設備中注意到捕獲的圖像后,onActivityResult()中的數據為空,
因此,替代方法是將特定圖像文件名作為參數傳遞給您的Intent,以捕獲圖像作為putExtra參數.
然后還將此圖像Uri插入Media Store,現在使用此Uri進一步使用,
您可以通過File.exist()檢查圖像是否被捕獲,
代碼看起來像,
ContentValues values = new ContentValues();
values.put(MediaStore.Images.Media.TITLE,"Image File name");
Uri mCapturedImageURI = getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,values);
Intent intentPicture = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intentPicture.putExtra(MediaStore.EXTRA_OUTPUT,mCapturedImageURI);
startActivityForResult(intentPicture,ACTION_TAKE_PICTURE);
現在,您可以使用相同的方法從Uri獲取文件路徑,
在這種情況下,它將在onActivityResult()中,
selectedImagePath = getRealPathFromURI(mCapturedImageURI); // don't use data.getData() as it return null in some device instead use mCapturedImageUR uri variable statically in your code,
總結
以上是生活随笔為你收集整理的android 相机路径,android – 如何获取刚从相机捕获的图像路径的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android unity hook,[
- 下一篇: html5变动标签新写法,Html5新标