在阅读了与此主题相关的一些帖子后,我无法解决我的疑问。
在我的应用程序中,我使用Facebook(Registration.class)登录,应用程序在MainActivity.class中启动。
在本课程中,我想了解一些有关用户的信息,例如' user_ID'要获取图像配置文件用户和' user_first_name',将这些信息都放在导航抽屉中非常有用。
我的问题是我使用以下代码在Registration.class中获取此信息:
profileTracker = new ProfileTracker() {
@Override
protected void onCurrentProfileChanged(Profile oldProfile, Profile currentProfile) {
// App code
Log.i("PERFIL_NAME", Profile.getCurrentProfile().getFirstName());
Log.i("PERFIL_FOTO", Profile.getCurrentProfile().getProfilePictureUri(100, 100).toString());
Log.i("USER_ID", Profile.getCurrentProfile().getId());
}
};
但我不知道如何在MainActivity.class中获取它。
如果我以同样的方式使用它,我会得到null。此外,我已经使用Intent进行了测试,但它不起作用,因为它也是null(我认为Intent之前执行的是profileTracker())。
此外,我在MainActivity中尝试了一些方法,如:
public void putImageProfile() {
URL imgUrl = null;
try {
imgUrl = new URL("http://graph.facebook.com/'user_ID'/picture?type=large");
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
InputStream in = null;
try {
in = (InputStream) imgUrl.getContent();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Bitmap bitmap = BitmapFactory.decodeStream(in);
img_profile.setImageBitmap(bitmap); //ImageView in NavDrawer
}
(' user_ID'是我的用户ID个人资料Facebook手动编写1000098 ...),但效果不佳。
总之,我希望获得“user_ID'和' user_name'在MainActivity.class ...之后,使用' user_ID'来获取图像配置文件。
非常感谢。