6

Facebook SDK に組み込みの LoginButton ウィジェットを使用していますが、何も変更していません。xml レイアウト ファイルに含めて、他にはsetSessionStatusCallback何も呼び出していません。

ただし、ログインボタンをクリックすると、facebook は基本情報と友達リストの両方を求めていると表示されます。私はユーザーの友達を表示する許可を望んでいません.LoginButtonのソースを調べた後、どちらも尋ねるべきではないようです.そのpermissions文字列リストは空です.

何が起きてる?

更新: リクエストにより私のコードを追加します。

    final LoginButton facebook = (LoginButton) getView().findViewById(R.id.facebook_login);
    if(facebook != null){
            if(Utility.getMetadataApplicationId(getActivity()) != null){
                facebook.setVisibility(View.VISIBLE);
                facebook.setSessionStatusCallback(new StatusCallback() {

                    @Override
                    public void call(Session session, SessionState state, Exception exception) {
                        if(session.isOpened()){
                            showProgress(true);
                            Request.executeMeRequestAsync(session, new GraphUserCallback() {

                                @Override
                                public void onCompleted(GraphUser user, Response response) {
                                    Log.d("test", user.getId());
                                }
                            });
                        }
                    }
                });
            }
    }
4

1 に答える 1

3

基本情報 + フレンド リストの要求は、アプリが要求できる最も基本的な権限です。追加の読み取りアクセス許可を指定しない場合、表示されるのはこれら 2 つのアクセス許可だけであり、それらを削除できるとは思えません。

アプリを Facebook と統合する際の固有の理由は、アプリをソーシャルにし、アプリの配布チャネルを提供することであるため、私たちはこれを行っていると思います。そのため、友達リストの許可はデフォルトで追加されます。これは、ユーザーがアプリのリクエスト ダイアログなどでアプリを友達と共有したい場合に、その許可を使用してアプリを友達と共有するように促す必要があるためです。

于 2012-12-29T00:28:28.823 に答える