gpt4 book ai didi

android - 通过相机获取最近拍摄的图像的路径和图像名称

转载 作者:太空狗 更新时间:2023-10-29 14:25:04 25 4
gpt4 key购买 nike

我必须将捕获的图像上传到 ftp 服务器。我正在通过相机捕获图像,我想获取图像名称和该图像的路径。我正在使用以下代码获取图像路径:

int ACTION_TAKE_PICTURE = 1;
String selectedImagePath;
Uri mCapturedImageURI;

Button loadButton;
ImageView img;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_new_ftpsdemo);
img = (ImageView)findViewById(R.id.image);

ContentValues values = new ContentValues();
values.put(MediaStore.Images.Media.TITLE, "yahoo.jpg");
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);

}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(requestCode == ACTION_TAKE_PICTURE){
selectedImagePath = getRealPathFromURI(mCapturedImageURI);
Log.v("selectedImagePath", selectedImagePath);
img.setImageBitmap( BitmapFactory.decodeFile(selectedImagePath));
}
}


public String getRealPathFromURI(Uri contentUri)
{
try
{
String[] proj = {MediaStore.Images.Media.DATA};
Cursor cursor = managedQuery(contentUri, proj, null, null, null);
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
}
catch (Exception e)
{
return contentUri.getPath();
}
}

但我得到的图像路径是这样的:

/mnt/sdcard/DCIM/Camera/1352443194885.jpg

因为我正在保存名称“yahoo.jpg”。我知道这可能是一个非常简单的问题,但我无法获得相同的图像名称和路径。所以我无法将图像上传到 ftp 服务器。

最佳答案

检查这个...把这个放在你的 onActivityResult 中

           Uri selectedImage = intent.getData();

String[] filePathColumn = {MediaStore.Images.Media.DATA};
Cursor cursor = getContentResolver().query(selectedImage, filePathColumn, null, null, null);
cursor.moveToFirst();
int columnIndex = cursor.getColumnIndex(filePathColumn[0]);
String filePath = cursor.getString(columnIndex);
Log.v("log","filePath is : "+filePath);

关于android - 通过相机获取最近拍摄的图像的路径和图像名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13303445/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com