我試圖讓我用相機拍攝的照片作爲字符串的路徑。當我嘗試用我的代碼拍攝照片時,字符串爲空。當我關閉我的應用程序時,打開相機應用程序並在那裏拍照,然後重新打開我的應用程序並使用我的代碼,然後獲取我使用相機應用程序拍攝的最後一張照片的字符串。我的問題是爲什麼我的相機意圖不工作,爲什麼當我使用相機應用程序工作?相機意圖圖片文件路徑
這裏是我的代碼:
public void onClick(View arg0) {
switch (arg0.getId()) {
case R.id.btnImageCapture:
Intent openCamera = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(openCamera, OPEN_CAMERA);
break;
}
}
private String getLastImagePath() {
final String[] imageColumns = { MediaStore.Images.Media._ID,
MediaStore.Images.Media.DATA };
final String imageOrderBy = MediaStore.Images.Media._ID + " DESC";
Cursor imageCursor = managedQuery(
MediaStore.Images.Media.EXTERNAL_CONTENT_URI, imageColumns,
null, null, imageOrderBy);
if (imageCursor.moveToFirst()) {
String fullPath = imageCursor.getString(imageCursor
.getColumnIndex(MediaStore.Images.Media.DATA));
imageCursor.close();
return fullPath;
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
switch(requestCode){
case OPEN_CAMERA:
if (resultCode == RESULT_OK && data != null) {
String picturePath = getLastImagePath();
break;
}
}
}
你爲什麼不使用給了你在onActivityResult圖像的URI? data.getData(); – dymmeh 2013-02-21 18:28:37
這是因爲我需要文件路徑。 ;) – 2013-02-21 18:31:48
用Uri試試我的答案。 – dymmeh 2013-02-21 18:57:05