获取相册照片的绝对路径

安卓在4.4版本后对Uri进行了改动,选取相册中的图片不在返回图片真实的Uri了,而是一个封装过的Uri,所以在4.4版本后要对这个Uri进行解析才行.

        Uri uri = data.getData();
        String imagePath = null;
        ContentResolver cr = activity.getContentResolver();
        Bitmap bitmap = null;
        Cursor cursor = null;
        if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.JELLY_BEAN) {
            cursor = cr.query(uri,null,null,null,null,null);
        }
        cursor.moveToFirst();
        imagePath = cursor.getString(cursor.getColumnIndex(MediaStore.Images.Media.DATA));

此 Uri是通过Intent隐式意图跳转到相册后在重写的onActivityResult方法中得到的,通过上面的步骤就得到了图片的真实路径 imagePath了.其中if语句是必须添加的,此段代码在Android Studio中完成.

你可能感兴趣的:(获取相册照片的绝对路径)