我想获得Facebook登录用户的个人资料图片的位图。
我已将facebook整合到我的应用程序中,并获得了个人资料图片的网址,
但是当我创建它的位图时,位图返回null。
我的代码:
String fbUID=variable.FacebookUserId;
String img ="http://graph.facebook.com" + File.separator
+ fbUID + File.separator + "picture";
System.out.println("Image for Home" + img);
img_value = new URL(img);
Bitmap mIcon1 = BitmapFactory.decodeStream(img_value.openConnection().getInputStream());
我想将这个位图发送到服务器,但是当它返回null时,我卡住了。
我还尝试下载图像,然后将位图发送到服务器,但它也无效。
我也参考下面的链接但钢铁没有结果:
Android and Facebook: How to get picture of logged in User
How to get facebook profile picture of user in facebook SDK Android
答案 0 :(得分:1)
如果遇到同样的问题,可以通过更改http:https:
来解决问题希望它有所帮助。
// DownloadImage AsyncTask
private class DownloadImage extends AsyncTask<String, Void, Bitmap> {
@Override
protected void onPreExecute() {
super.onPreExecute();
}
@Override
protected Bitmap doInBackground(String... URL) {
String imageURL = URL[0];
Bitmap bitmap = null;
try {
// Download Image from URL
InputStream input = new java.net.URL(imageURL).openStream();
// Decode Bitmap
bitmap = BitmapFactory.decodeStream(input);
SaveImage(bitmap);
} catch (Exception e) {
e.printStackTrace();
}
return bitmap;
}
@Override
protected void onPostExecute(Bitmap result) {
// Set the bitmap into ImageView
imageview.setImageBitmap(result);
}
}
将其称为
new DownloadImage().execute(YOUR_URL);