我正在按照本指南在我的 Android 应用程序中通过 Facebook 设置社交登录:https ://developers.facebook.com/docs/facebook-login/android/permissions
使用 FacebookLoginButton
设置回调来处理用户身份验证结果很容易:
facebookCallbackManager = CallbackManager.Factory.create();
final LoginButton facebookLoginButton = findViewById(R.id.facebook);
facebookLoginButton.setReadPermissions(Collections.singletonList(EMAIL));
LoginManager.getInstance().registerCallback(facebookCallbackManager,
new FacebookCallback<LoginResult>() {
@Override
public void onSuccess(LoginResult loginResult) {
final String accessToken = loginResult.getAccessToken().getToken();
...
}
@Override
public void onCancel() {
}
@Override
public void onError(FacebookException exception) {
}
});
但是当我与其他 Android 按钮交换时LoginButton
,我无法再使用该setReadPermissions
功能。
我的问题是:使用自定义登录按钮时,如何向 Facebook 请求用户的电子邮件许可?