android uri.getPath()和性能

时间:2014-11-12 17:42:58

标签: android

我正在考虑使用uri.getPath()。 但是由于我在网上看到的代码片段,我有点困惑,如下所示。在该示例中,作者首先尝试以不同的方式检索图像。

所以我想知道使用uri.getPath()是否存在一些严重的性能缺点? (或者他为什么不简单地跳过媒体商店部分?)

/**
 * helper to retrieve the path of an image URI
 */
public String getPath(Uri uri) {
        // just some safety built in 
        if( uri == null ) {
            // TODO perform some logging or show user feedback
            return null;
        }
        // try to retrieve the image from the media store first
        // this will only work for images selected from gallery
        String[] projection = { MediaStore.Images.Media.DATA };
        Cursor cursor = managedQuery(uri, projection, null, null, null);
        if( cursor != null ){
            int column_index = cursor
            .getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
            cursor.moveToFirst();
            return cursor.getString(column_index);
        }
        // this is our fallback here
        return uri.getPath();
}

来自https://stackoverflow.com/a/21018617/3991799

0 个答案:

没有答案