我有一个应用程序,我试图从通过谷歌集成获得的链接中检索图像。然而,每当我尝试将图片放入位图中时,它总是会给我一个错误。代码和错误如下:
代码:
if (google_user_gallery_pic.isEmpty() == true)
{
if (google_user_pic.isEmpty() == false)
{
onPost = null;
onPost2 = null;
onPost = getBitmapFromURL(google_user_pic);
onPost2 = onPost2.createScaledBitmap(onPost, 100, 100, false);
}
else
{
onPost = null;
onPost2 = null;
onPost = BitmapFactory.decodeFile(google_user_gallery_pic);
if (onPost == null)
{
onPost2 = BitmapFactory.decodeResource(getResources(), R.drawable.the_smallperson);
}
else
{
onPost2 = onPost2.createScaledBitmap(onPost, 100, 100, false);
}
}
}
else
{
onPost = null;
onPost2 = null;
onPost = BitmapFactory.decodeFile(google_user_gallery_pic);
if (onPost == null)
{
onPost2 = BitmapFactory.decodeResource(getResources(), R.drawable.the_smallperson);
//onPost2 = onPost2.createScaledBitmap(onPost, 100, 100, false);
}
else
{
onPost2 = onPost2.createScaledBitmap(onPost, 100, 100, false);
}
}
错误:
E/BitmapFactory: Unable to decode stream: java.io.FileNotFoundException: https:/lh3.googleusercontent.com/-HW5Tk9h1V2I/AAAAAAAAAAI/AAAAAAAADA8/7UbMeHbyFLM/photo.jpg: open failed: ENOENT (No such file or directory)
网址:
https://lh3.googleusercontent.com/-HW5Tk9h1V2I/AAAAAAAAAAI/AAAAAAAADA8/7UbMeHbyFLM/photo.jpg
此网址在一个页面上有效,但在另一页面上无效。两个页面都是 fragment Activity 。任何帮助将不胜感激,谢谢!
最佳答案
尝试将 if 和 else 条件反转为如下所示:
if (google_user_gallery_pic.isEmpty() == false)
{
if (google_user_pic.isEmpty() == false)
{
onPost = null;
onPost2 = null;
onPost = getBitmapFromURL(google_user_pic);
onPost2 = onPost2.createScaledBitmap(onPost, 100, 100, false);
}
else
{
onPost = null;
onPost2 = null;
onPost = BitmapFactory.decodeFile(google_user_gallery_pic);
if (onPost == null)
{
onPost2 = BitmapFactory.decodeResource(getResources(), R.drawable.the_smallperson);
}
else
{
onPost2 = onPost2.createScaledBitmap(onPost, 100, 100, false);
}
}
}
else
{
onPost = null;
onPost2 = null;
onPost = BitmapFactory.decodeFile(google_user_gallery_pic);
if (onPost == null)
{
onPost2 = BitmapFactory.decodeResource(getResources(), R.drawable.the_smallperson);
//onPost2 = onPost2.createScaledBitmap(onPost, 100, 100, false);
}
else
{
onPost2 = onPost2.createScaledBitmap(onPost, 100, 100, false);
}
}
因为给定了权限和其他任何东西而不是这个代码 fragment ,所以除了这个之外没有任何问题
关于android - 无法从 Google 个人资料图片网址获取位图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43296252/