如何获得在Android的拍摄图像的路径 [英] How to get path of a captured image in android
本文介绍了如何获得在Android的拍摄图像的路径的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我工作的Android应用程序。它具有捕获的图像要在屏幕上显示的功能,我需要获得图片路径,这样我就可以发送图像到服务器。
I am working on an android application. It has a functionality that captured image should display on screen and I need to get that image path, so that I can send that image to server.
我能在屏幕上显示的图像,但无法获得绝对的图片路径。
I am able to display image on screen, but unable to get absolute image path.
我收到路径:
content://media/external/images/media/1220
content://media/external/images/media/1221
我怎样才能得到实际的图片路径?
How can I get actual image path?
下面是我的code:
mintent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
mintent.putExtra(MediaStore.EXTRA_OUTPUT,
MediaStore.Images.Media.EXTERNAL_CONTENT_URI.toString());
startActivityForResult(mintent, 1);
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if ((data != null && !data.toString().equalsIgnoreCase("Intent { }"))
|| requestCode == 1)
switch (requestCode) {
case 1:
try {
// Uri imageFileUri = data.getData();
// String path=getRealPathFromURI(this,imageFileUri);
// Bitmap bitmap = (Bitmap) data.getExtras().get("data");
String photoPath = null;
Bitmap bitmap = (Bitmap) data.getExtras().get("data");
Intent intent = new Intent(this, Media.class);
intent.putExtra("BitmapImage", bitmap);
Bundle b = mintent.getExtras();
if (b != null && b.containsKey(MediaStore.EXTRA_OUTPUT)) { // large
// image?
String timeStamp = new SimpleDateFormat(
"yyyyMMdd_HHmmss").format(new Date());
// Shouldn't have to do this ... but
photoPath = MediaStore.Images.Media.insertImage(
getContentResolver(), bitmap, "Img" + timeStamp
+ ".jpeg", null);
}
}
}
}
photoPath
值显示在上面。
我怎样才能让我的形象绝对路径,从该路径。
How can I get my absolute image path from this path.
推荐答案
这是一个工作的功能 -
This is a working function--
String selectedImagePath = getPath(selectedImageUri);
private String getPath(Uri uri) {
String[] projection = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(uri, projection, null, null,null);
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
}
这篇关于如何获得在Android的拍摄图像的路径的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文