Android Facebook sdk在公开个人资料权限弹出后被困

时间:2014-05-10 06:39:24

标签: android android-facebook

我一直在使用Facebook SDK进行当前的android项目。我第一次在Facebook登录时遇到一些奇怪的问题,即当我第一次发布我的代码时,它要求登录,一旦登录成功,当我同意弹出窗口中出现加载进度时,会出现一个弹出窗口请求公共配置文件权限无休止地,我甚至无法取消弹出窗口。它不会回到调用活动的'onActivityResult()'方法。最终我必须强制停止我的申请。 但是,一旦我在手机上再次打开我的应用程序,现在一切正常并且符合预期。

我猜这是应用程序第一次注册到Facebook。

如果我重复整个过程,即从Facebook删除应用程序,从设备的Facebook应用程序注销,再次在手机上卸载并重新安装我的应用程序,我面临同样的问题。

我正在使用Facebook SDK 3.5

这是我的代码:activity的onCreate(...)方法

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    Session.openActiveSession(this, true, new Session.StatusCallback() {

          // callback when session changes state
          @Override
          public void call(Session session, SessionState state, Exception exception) {
            if (session.isOpened()) {

              // make request to the /me API
              Request.newMeRequest(session, new Request.GraphUserCallback() {

                // callback after Graph API response with user object
                @Override
                public void onCompleted(GraphUser user, Response response) {
                  if (user != null) {
                    TextView welcome = (TextView) findViewById(R.id.welcome);
                    welcome.setText("Hello " + user.getName() + "!");
                  }
                }
              }).executeAsync();
            }
          }
        });

}

onActivityResult(....)方法

@Override
  public void onActivityResult(int requestCode, int resultCode, Intent data) {
      super.onActivityResult(requestCode, resultCode, data);
      System.out.println("In on Activity Result");
      Session.getActiveSession().onActivityResult(this, requestCode, resultCode, data);
  }

0 个答案:

没有答案