LoginButton要求朋友列表权限,为什么?

Nat*_*ann 6 android facebook facebook-login

我在facebook sdk中使用内置的LoginButton小部件,我没有对它进行任何更改我只是将它包含在我的xml布局文件中,并且setSessionStatusCallback不再调用任何其他内容.

但是,当我点击登录按钮时facebook说我要求基本信息和朋友列表.我不希望查看用户朋友的权限,在查看了LoginButton的来源之后,它似乎也不应该问,它的permissionsString列表是空的.

这里发生了什么?

更新:按请求添加我的代码.

    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());
                                }
                            });
                        }
                    }
                });
            }
    }
Run Code Online (Sandbox Code Playgroud)

Jes*_*hen 3

请求基本信息+好友列表是应用程序可以请求的最基本的权限。如果您不提供任何额外的读取权限,那么这两个权限是唯一会显示的权限,并且我不相信您可以删除它们。

我相信我们这样做是因为在将您的应用程序与 Facebook 集成时,其内在原因是使您的应用程序具有社交性并为您的应用程序提供分发渠道。因此,默认情况下会添加朋友列表权限,因为您应该使用该权限来鼓励用户与他们的朋友共享您的应用程序(如果他们希望通过应用程序请求对话框等)这样做。

  • 好的,谢谢,我希望你将来能改变这一点,你想推广社交应用程序很好,但并不是真正的 SSO 精神。 (8认同)