我正在开发Android应用程序。安装facebook本机应用程序时,它不起作用,只显示两个弹出窗口。但如果没有安装它重定向到Facebook网站,工作正常。如何解决这个问题。任何帮助将不胜感激。我已经检查并添加了facebook app中的所有hashkey。但仍然没有工作。
statusCallback = new SessionStatusCallback();
Session session = Session.getActiveSession();
this.isLogin = isLoginUser;
session = null;
if (session == null) {
if (savedInstanceState != null) {
session = Session.restoreSession(context, null, statusCallback,savedInstanceState);
}
if (session == null) {
session = new Session.Builder(context).setApplicationId(
"688998947797106").build();
}
Session.setActiveSession(session);
if (session.getState().equals(SessionState.CREATED_TOKEN_LOADED)) {
session.openForRead(new Session.OpenRequest(activity)
.setCallback(statusCallback)
.setLoginBehavior(
SessionLoginBehavior.SSO_WITH_FALLBACK)
.setPermissions(Arrays.asList("email")));
}
}
if (!session.isOpened() && !session.isClosed()) {
session.openForRead(new Session.OpenRequest(activity)
.setCallback(statusCallback)
.setLoginBehavior(SessionLoginBehavior.SSO_WITH_FALLBACK)
.setPermissions(Arrays.asList("email")));
} else {
Session.openActiveSession(activity, true, statusCallback);
}
答案 0 :(得分:2)
首先使用我在此链接Facebook Integration in Android Application给出的这些代码行检查您的哈希密钥,如果它尚未运行,请检查您的 Facebook Android应用程序是否已更新。如果应用程序未更新,请更新您的Facebook应用程序并尝试发布。
答案 1 :(得分:0)
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
facebook.authorizeCallback(requestCode, resultCode, data);
}
在您呼叫Facebook登录请求的活动中使用此代码。