Firebase oAuth:范围

时间:2016-12-12 08:21:05

标签: firebase-authentication

如何访问或获得第三方身份授权人(如Google或Facebook)提供的扩展范围的许可?

喜欢,从Facebook或Google +访问联系人。

1 个答案:

答案 0 :(得分:1)

对于Facebook,您应该询问您希望从用户那里获得的权限。例如,read_custom_friendlists权限将授予您访问用户Facebook好友列表的权限。您可以使用Facebook SDK请求权限并将其集成到您的应用中:

@Override
public View onCreateView(
        LayoutInflater inflater,
        ViewGroup container,
        Bundle savedInstanceState) {
    View view = inflater.inflate(R.layout.splash, container, false);

    loginButton = (LoginButton) view.findViewById(R.id.login_button);
    loginButton.setReadPermissions("email");
    // If using in a fragment
    loginButton.setFragment(this);    
    // Other app specific specialization

    // Callback registration
    loginButton.registerCallback(callbackManager, new FacebookCallback<LoginResult>() {
        @Override
        public void onSuccess(LoginResult loginResult) {
            // App code
        }

        @Override
        public void onCancel() {
            // App code
        }

        @Override
        public void onError(FacebookException exception) {
            // App code
        }
    });    
}

使用loginButton.setReadPermissions("email"),您将获得访问用户电子邮件的权限。您可以检查从Facebook developers website获得的所有权限。

关于Google+,如果我没错,你应该使用android sdk从gmail中选择联系人。

希望它能帮到你!