小编dba*_*ugh的帖子

从图库中检索要上传的Picasa图像

我正在开展一项活动和相关任务,允许用户从图库中选择要用作其个人资料图片的图像.选择完成后,图像将通过其API上载到Web服务器.我有来自画廊的常规图像.但是,如果所选图像来自Picasa网络相册,则不会返回任何内容.

我做了很多调试,并将问题缩小到这个方法.

public String getPath(Uri uri) {
    String[] projection = { MediaStore.Images.Media.DATA };
    Cursor cursor = managedQuery(uri, projection, null, null, null);
    //cursor is null for picasa images
    if(cursor!=null)
    {
        int column_index = cursor
        .getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
        cursor.moveToFirst();
        return cursor.getString(column_index);
    }
    else return null;
}
Run Code Online (Sandbox Code Playgroud)

Picasa图片会返回一个空游标. MediaStore.Images.Media.DATA不是空了他们,但是.它只返回一个#id,所以我猜测地址上没有实际的位图数据.Picasa图片是否本地存储在设备上?

我还从文档中注意到MediaStore.Images.ImageColumns.PICASA_ID存在.此值适用于所选的picasa图像,但不适用于其他图库图像.我想我可以使用此值来获取图像的URL,如果它不是本地存储但我无法在任何地方找到任何相关信息.

android picasa

13
推荐指数
1
解决办法
7232
查看次数

标签 统计

android ×1

picasa ×1