2013-07-09 1 views
0

로그인 및 요청 권한이 정상적으로 작동합니다. 그러나 한 가지 문제가 있습니다. 사용자가 내 앱에서 일부 날짜를 공유하려고 할 때 게시 권한을 요청해야합니다. 여기 내 코드는 다음과 같습니다.새 권한 요청이 실패 함

ParseFacebookUtils.getSession().requestNewPublishPermissions(new NewPermissionsRequest((Activity) context, 
      Arrays.asList(Permissions.Extended.PUBLISH_ACTIONS, Permissions.Extended.PUBLISH_STREAM)) 
     .setCallback(new StatusCallback() { 
      @Override 
      public void call(Session session, SessionState state, Exception exception) { 
       if (!arePublishPermissionsEnabled(session)) { 
        inflow.setChecked(false); 
        facebook.setChecked(false); 
        twitter.setChecked(false); 
       } 
      } 
     })); 

사용자가 요청을 취소했거나 네트워크 연결이 끊긴 경우를 처리하는 데 문제가 있습니다. 이 경우 UI에서 몇 가지 변경 작업을 수행해야하지만 메서드 호출은 세션 상태가 변경 (예 : 새 권한 부여) 될 때만 호출되며 UI가 제대로 변경되지 않습니다. 누구든지 그런 문제에 직면 해 있습니까?

+0

어떤 SDK 버전을 사용하고 있습니까? 3.0.1이이 문제를 해결한다고 생각합니다. –

+0

아니요, 3.0.2 –

답변

1
private void requestPublishPermissions(Session session) { 
    List<String> PERMISSIONS = Arrays.asList("publish_actions", "publish_stream"); 
    if (session != null) { 
     pendingAnnounce = true; 
     Session.NewPermissionsRequest newPermissionsRequest = new Session.NewPermissionsRequest(this, PERMISSIONS); 

     newPermissionsRequest.setRequestCode(REAUTH_ACTIVITY_CODE); 
     Session mSession = Session.openActiveSessionFromCache(this); 
     mSession.addCallback(callback); 
     mSession.requestNewPublishPermissions(newPermissionsRequest); 
    } 
} 
+0

감사합니다! REAUTH_ACTIVITY_CODE은 (는) 내가 원하는대로 작동합니다. –