Android Facebook sdk在公共配置文件权限弹出后卡住

Android Facebook sdk在公共配置文件权限弹出后卡住,android,android-facebook,Android,Android Facebook,我一直在为我当前的android项目使用Facebook SDK。我第一次登录Facebook时遇到了一些奇怪的问题,例如,当我第一次使用我的代码要求登录时,一旦登录成功,就会出现一个弹出窗口要求获得公共配置文件权限。当我同意加载进度无休止地出现在弹出窗口上时,我甚至无法取消弹出窗口。它不会返回调用活动的“onActivityResult”方法。最终我不得不强制停止我的申请。 但一旦我在电话上再次打开我的应用程序,现在一切都正常了,正如预期的那样 我想这是第一次在facebook上注册应用程序

我一直在为我当前的android项目使用Facebook SDK。我第一次登录Facebook时遇到了一些奇怪的问题,例如,当我第一次使用我的代码要求登录时,一旦登录成功,就会出现一个弹出窗口要求获得公共配置文件权限。当我同意加载进度无休止地出现在弹出窗口上时,我甚至无法取消弹出窗口。它不会返回调用活动的“onActivityResult”方法。最终我不得不强制停止我的申请。 但一旦我在电话上再次打开我的应用程序,现在一切都正常了,正如预期的那样

我想这是第一次在facebook上注册应用程序

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

我正在使用Facebook SDK 3.5

这是我的代码:活动的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();
            }
          }
        });

}
@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);
  }
onActivityResult。。。。方法

@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();
            }
          }
        });

}
@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);
  }

你没有使用UILifeCycleHelper?不,我没有使用它。。。。我只是在运行“入门”android SDK中facebook教程中提供的示例代码。基本上,这对于活动之间的流程非常重要,我相信如果您已经实现了它。您不会遇到这种情况,我一定会尝试实现UILifecyclehelper。。但我最近只在某些特定的设备上遇到了这个问题。。我在以前的应用程序中已经实现了facebook sdk 3.5,但从未遇到过这种情况,我没有使用facebook登录按钮,而是使用会话登录。设备之间是否使用相同的facebook凭据,手机是否安装了facebook应用程序?