我正在開發一個應用程序,其中從本機相機應用程序拍攝的圖像。將被顯示給用戶。 我做的代碼是:Android三星:相機應用程序不會返回intent.getData()
/* Intent */
Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
startActivityForResult(intent, TAKE_PICTURE);
/* Result */
onActivityResult(int requestCode, int resultCode,
Intent returnIntent) {
if(requestCode == TAKE_PICTURE) {
//picture from Camera
if (resultCode == Activity.RESULT_OK) {
if(returnIntent != null) {
try {
// Get the file path where the image is stored.
// This runs fine on all devices, except Samsung ones.
Uri selectedImage = returnIntent.getData();
if(selectedImage == null) {
if(returnIntent.getExtras() != null &&
returnIntent.getExtras().get(AppConstants.DATA) != null) {
// But, I get the image Bitmap here. Means the image is stored in disk.
Bitmap bmp = (Bitmap) returnIntent.getExtras().get(AppConstants.DATA);
}
}
} catch (Exception e) {
//
}
}
}
}
}
這裏的問題是,上面的代碼工作正常,在我嘗試了所有設備(HTC的,SE的),但它在三星的人莫名其妙地失敗。 「Uri selectedImage = returnIntent.getData();」永不退貨。由於我的整個應用程序都是基於這種文件路徑存儲邏輯構建的,因此我無法繼續。 有沒有解決方案的人。
您是否找到解決方案? – Sharj