3

Androidアプリでユーザーから公開許可を取得しようとしていますが、成功していますが、許可を取得したら、コールバックでそれを教えてもらいたいです。これが私のコードです:

private void requestPublishPermissions(Session session) {
    Log.d("", "Requesting Publish Permissions...");
    if (session != null) {
        List<String> publishPermissions = Arrays.asList("publish_actions", "publish_stream");
        final int REAUTH_ACTIVITY_CODE = 100;
        Session.NewPermissionsRequest reauthRequest = new Session.NewPermissionsRequest(this, publishPermissions).setRequestCode(REAUTH_ACTIVITY_CODE);
        reauthRequest.setLoginBehavior(SessionLoginBehavior.SUPPRESS_SSO);
        session.requestNewPublishPermissions(reauthRequest);
    }
}

session.requestNewPublishPermissions(reauthRequest);パーミッションが受け入れられたことを伝えるコールバックまたは何かがありますか?

ご意見ありがとうございます

4

3 に答える 3

2

そのリクエストのコールバックについては知りませんが、目的の結果を得る簡単な方法があります。

onSessionStateChanged()コールバックに条件を追加するだけです。を使用してそのメソッドで権限をsession.getPermissions().contains("xxx")確認すると、そこにチェックインできるはずです。セッション状態が変化するたびに、そのメソッドが呼び出されます。これには、アクセス許可の更新が含まれると思います。

于 2013-06-14T16:49:06.010 に答える
0

FB セッションにコールバックを手動で追加できます。

Session.getActiveSession().addCallback(new StatusCallback() {

            @Override
            public void call(Session session, SessionState state, Exception exception) {
                if (session.getPermissions().contains("publish_actions")) {
                    //do stuff


                }
            }
        });
于 2013-10-06T18:37:41.540 に答える