簡體   English   中英

FacebookSDK Request.newMeRequest onCompleted在JELLYBEAN上被調用,但不是KITKAT或LOLLIPOP

[英]FacebookSDK Request.newMeRequest onCompleted called on JELLYBEAN but not KITKAT or LOLLIPOP

此代碼導致在Samsung JELLYBEAN上調用onCompleted方法,但在Motorola KITKAT或LG LOLLIPOP設備上不會調用。 日志返回: W/Facebook test(20699): Facebook session status changed - OPENED - Exception: null打開W/Facebook test(20699): Facebook session status changed - OPENED - Exception: null在所有設備上為W/Facebook test(20699): Facebook session status changed - OPENED - Exception: null

private class SessionStatusCallback implements Session.StatusCallback {
    @Override
    public void call(Session session, SessionState state, Exception exception) {
        String message = "Facebook session status changed - "
                + session.getState() + " - Exception: " + exception;                     
        Log.w("Facebook test", message);
        if (session.isOpened()) {
            Request.newMeRequest(session, new Request.GraphUserCallback() {
                @Override
                public void onCompleted(GraphUser user, Response response) {
                    Log.d("onCompleted",""); 
                }
            }).executeAsync();
        } 
    }
}

我已經檢查了權限並存儲了哈希。 這是我的onActivityResult方法:

  @Override
  public void onActivityResult(int requestCode, int resultCode, Intent data) {
      super.onActivityResult(requestCode, resultCode, data);
      Session.getActiveSession().onActivityResult(this, requestCode, resultCode, data);
  }

更新:我使用與問題應用程序相同的代碼創建了一個測試項目。 該項目沒有問題,這表明它不是Java問題。 清單與Facebook相同。 在每種情況下,我都有正確的app_id。 除了包名稱,類名稱和密鑰哈希值之外,developers.facebook.com上應用程序的設置相同。

  • 轉到developers.facebook.com
  • 選擇你的應用
  • 選擇狀態並查看
  • 更改“您是否要向公眾提供此應用及其所有實時功能?” 到否(此時我等待了大約十分鍾,可能沒有必要)
  • 然后將相同設置更改回是

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM