gpt4 book ai didi

android - 从 Intent.ACTION_GET_CONTENT 到文件的 URI

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:24:37 33 4
gpt4 key购买 nike

  1. 使用 Intent.ACTION_GET_CONTENT 启动照片选择器
  2. 检索所选项目的 URI
  3. 检索 URI 的路径,以便我可以将其发布到我的网络服务器

    启动浏览的代码

    Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
    intent.setType("image/*");
    startActivityForResult(intent, BROWSE_IMAGE_REQUEST_CODE);

    检索所选图像的代码

    if (RESULT_OK == resultCode &&
    BROWSE_IMAGE_REQUEST_CODE == requestCode) {
    Uri uri = data.getData();

    发送到网络服务器的代码

    File file = new File(uri.getPath());
    new FileSystemResourceFile(file);

我目前能够从 URI 中检索 PATH 没有问题 /external/images/media/24 但由于某些奇怪的原因文件总是空的,请帮忙?

最佳答案

我已经完成了将 UriIntent.ACTION_GET_CONTENT 转换为真实路径的方法:

public static String getRealPathFromUri(Activity activity, Uri contentUri) {
String[] proj = { MediaStore.Images.Media.DATA };
Cursor cursor = activity.managedQuery(contentUri, proj, null, null, null);
int column_index = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
return cursor.getString(column_index);
}

依次转换为文件:

Uri filePathFromActivity = (Uri) extras.get(Intent.EXTRA_STREAM);
filePathFromActivity = Uri.parse(FileUtil.getRealPathFromUri( (Activity) IntentActivity.this, filePathFromActivity));
File imageFile = new File(filePathFromActivity.getPath());

关于android - 从 Intent.ACTION_GET_CONTENT 到文件的 URI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8646246/

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