2015-01-29 2 views
0

Этот код вызывает метод onCompleted, который вызывается на Samsung JELLYBEAN, но не на устройствах Motorola KITKAT или LG LOLLYPOP. Журнал возвращает: W/Facebook test(20699): Facebook session status changed - OPENED - Exception: null на всех устройствах.FacebookSDK Request.newMeRequest onCompleted, вызванный JELLYBEAN, но не KITKAT или LOLLYPOP

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

UPDATE: Я создал тестовый проект с идентичным кодом для приложения проблемы. Этот проект не имеет проблемы, что говорит о том, что это не проблема Java. Проявления одинаковы в отношении Facebook. У меня есть правильный app_id в каждом случае. Настройки приложений на developers.facebook.com одинаковы, за исключением имени пакета, имени класса и хэша ключа.

ответ

0
  • Перейти к developers.facebook.com
  • Выберите приложение
  • Выберите Статус и отзыв
  • Изменить «Вы хотите, чтобы сделать это приложение и все его живые черты доступны для широкой публики? " к NO (я ждал около десяти минут в этой точке, которая не может быть необходимым)
  • затем изменить один и тот же параметр обратно ДА
Смежные вопросы