Android从https网址获取图片来源?

时间:2010-11-11 12:06:58

标签: android

我正在尝试从https网址获取图片,但它似乎无法显示并正确获取图片,但在我的计算机浏览器上工作正常。

我测试了一个指向不同图像的http网址,它运行正常。

我的代码如下:

public Bitmap getContactPhoto(String url) {
        Bitmap pic = null;
        try {
            pic = BitmapFactory
                    .decodeStream((InputStream) new URL(
                            "https://mail.google.com/mail/photos/static/AD34hIjbK2m-Lj333E4nBcCkBC3MYl2tTs0xizuSqUOP3-Jd6DOrpFg1M5HG8jXh0MuPbeFepInZZDu92Dx8ST4b59EbOKmfYTortuuO3P1_Ohyu7b7a3gc")
                            .getContent());
        } catch (MalformedURLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

        return pic;

    }

这是调用上述方法的activity类中的代码:

private ImageView mContactPhoto;
private ContactDetailsViewHelper mViewHelper;

mContactPhoto = (ImageView) findViewById(R.id.contact_photo);
mViewHelper = new ContactDetailsViewHelper(mContext);
mContactPhoto.setImageBitmap(mViewHelper.getContactPhoto(mDetail.getImageRef()));

忽略传递真实url值的mDetail.getImageRef,但在这种情况下,我尝试使用getContactPhoto方法查看网址的硬编码。

感谢

1 个答案:

答案 0 :(得分:1)

您只能在浏览器中看到它,因为您已登录GMail并拥有相应的Cookie来证明它。在注销后或打开Incongnito / Private Browsing / InPrivate窗口时尝试查看图像。您需要找到此图像的其他来源。