java 从URI中获取图片真实路径

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 从URI中获取图片真实路径相关的知识,希望对你有一定的参考价值。

/**
     * 从URI中获取图片真实路径
     *
     * @param pContext 上下文
     * @param uri      文件所在的uri
     * @return 返回最终路径
     */
public static String getRealPathFromUri(Context pContext, Uri uri) {
        if (null == uri) {
            return null;
        }
        String scheme = uri.getScheme();
        if (TextUtils.isEmpty(scheme)) {
            return null;
        }

        if (uri.toString().startsWith("content://com.android.providers")) {// 4.4以上的uri格式
            // :content://com.android.providers.media.documents/document/image%3A137638
            return resolveDocumentProviderUri(pContext, uri);
        } else if (ContentResolver.SCHEME_FILE.equals(scheme)) {// file:///storage/emulated/0/Android/data/com.dropbox.android/files/scratch/go.png
            String uriStr = uri.toString();
            int index = "file://".length() + 1;
            if (uriStr.length() > index) {
                return uriStr.substring(index);
            }
        } else if (uri.toString().startsWith("content://media")) {// content://media/external/images/media/65360
            return resolveMediaUri(pContext, uri);
        } else {
            return getDataColumn(pContext, uri, null, null);
        }
        return null;
    }

以上是关于java 从URI中获取图片真实路径的主要内容,如果未能解决你的问题,请参考以下文章

java 从URI获取真实路径。字体:https://stackoverflow.com/questions/2789276/android-get-real-path-by-uri-getpath

java 根据URI获取文件真实路径

Android获取图库图片Uri路径

Android从Uri获取视频图片的真实地址

从URI获取真实路径,Android KitKat新的存储访问框架[重复]

获取 Uri Android 的真实路径