标签:facebook facebook-android-sdk android
我登录Facebook时使用的是Facebook SDK 3.0,它比回到下一个活动返回登录屏幕,但我想直接进入下一个活动.
这是我的代码:
if (session.isOpened()) {
token = session.getAccessToken();
Log.i("TAG", "Access Token" + token);
Request.executeMeRequestAsync(session,new Request.GraphUserCallback() {
@Override
public void onCompleted(GraphUser user, Response response) {
if (user != null) {
id = user.getId();
Log.i("TAG", "User ID " + user.getId());
Log.i("TAG", "Email "+ user.asMap().get("email"));
try {
URL image_value = new URL("http://graph.facebook.com/"+id+"/picture?type=large" );
profPict=BitmapFactory.decodeStream(image_value.openConnection().getInputStream());
} catch (MalformedURLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//http://graph.facebook.com/4/picture
Intent i = new Intent(MainActivity.this,Next.class);
i.putExtra("BitmapImage", profPict);
startActivity(i);
// lblEmail.setText(user.asMap().get("email").toString());
}
}
});
}
和onActivityResult()
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
Session.getActiveSession().onActivityResult(this, requestCode,
resultCode, data);}
解决方法:
嘿,请在onActivityResult块中插入以下代码:
Session.getActiveSession().onActivityResult(this, requestCode, resultCode, data);
if (Session.getActiveSession() != null || Session.getActiveSession().isOpened()){
Intent i = new Intent(MainActivity.this,Next.class);
startActivity(i);
}
这很好.
标签:facebook,facebook-android-sdk,android 来源: https://codeday.me/bug/20191123/2066883.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。