繁体   English   中英

如何从Google相册中挑选存储在云中的照片?

[英]How to pick those photo stored in cloud from Google Photos?

我知道如何从画廊中挑选照片,它总是可以正常工作的。

从图库中选择照片的代码:

Intent intent = new Intent(Intent.ACTION_PICK,MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
startActivityForResult(intent, REQ_GALLERY);

并在onActivityResult()处理结果的代码:

Uri uri = data.getData();
Cursor cursor = getContext().getContentResolver().query(uri, new String[] {
    MediaStore.Images.Media.DATA,
}, null, null, null);
if (cursor == null) return false;
if (cursor.moveToFirst()) {
    String path = cursor.getString(0);
    if (path != null) {
           startPhotoEdit(new File(path), output, requestCode);
           cursor.close();
           return true;
    }
}
cursor.close();

这次我从Google相册中挑选了照片,照片仍然存储在云中,还没有下载到本地。 在我选择了一个并且开始下载后,像这样:

photo_downloading

下载任务完成并返回到我的应用程序后,光标中始终包含照片路径的_data空。

有人能帮助我吗。

我终于发现,从云中拾取照片后,其Uri是不同的。 像这样:

content://com.google.android.apps.photos.contentprovider/1/1/mediakey%3A%2Flocal%253A131b7978-cc48-4206-8561-d18f99421551/ORIGINAL/NONE/2134743478

它包含mediakey而不是普通Uricontent

因此,这可能会有所帮助:

getContentResolver().openInputStream(uri);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM