【发布时间】:2014-03-30 08:18:26
【问题描述】:
我想将 facebook 个人资料图片存储到解析用户表中。 目前我正在尝试这个:
URL img_value = null;
try {
img_value = new URL("http://graph.facebook.com/"+user.getId()+"/picture?type=small");
} catch (MalformedURLException e){
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
Bitmap dp = BitmapFactory.decodeStream(img_value.openConnection().getInputStream());
Log.i(IntegratingFacebook.TAG, "image retrieved from facebook");
// Save the user profile info in a user property
ParseUser currentUser = ParseUser.getCurrentUser();
if(dp!=null){
ParseFile saveImageFile= new ParseFile("profilePicture.jpg",compressAndConvertImageToByteFrom(dp));
currentUser.put("profilePicture",saveImageFile);
}
currentUser.saveInBackground();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
网址是正确的。但是 dp 始终为空。 因此,图像永远不会存储在解析用户表中。 任何帮助表示赞赏。
【问题讨论】:
-
你确定你使用的Url是正确的吗?
-
是的,您可以通过将您的 id 代替 user.getId() 来自己查看!
-
尝试硬编码一个 FB id 而不是使用 user.getId() (我怀疑你的用户是 null 或者它返回无效的 id)并告诉我它是否仍然是空的
-
我试过了..dp 仍然是空的,而且 user.getId() 确实返回了一个有效的 id,因为我在我的应用程序的其他地方使用它并且它确实有效。
标签: android facebook parse-platform