无法将读取权限(电子邮件)传递给发布授权请求
Cannot pass a read permission (email) to a request for publish authorization
我正在尝试通过 Firebase 身份验证使用 Facebook 登录。我遵循了整个文档。最后,每当我单击登录按钮时,它都会显示一条错误消息:
Cannot pass a read permission (email) to a request for publish authorization
显示错误的行是:
LoginManager.getInstance().logInWithPublishPermissions(LoginActivity.this,Arrays.asList("email", "public_profile"));
有人可以解释我做错了什么吗?我也看过其他答案,但没有任何帮助。
使用 logInWithReadPermissions
而不是 logInWithPublishPermissions
。错误消息非常清楚,您正在尝试使用用于发布权限的函数请求读取权限。
.getInstance().logInWithPublishPermissions
不是 Firebase 身份验证。通过 Firebase JavaScript (web) SDK 可以通过 Facebook 等联合提供商登录。有关详细信息,请参阅 Authenticate Using Facebook Login with JavaScript。
firebase.auth().signInWithPopup(provider).then(function(result) {
// This gives you a Facebook Access Token. You can use it to access the Facebook API.
var token = result.credential.accessToken;
// The signed-in user info.
var user = result.user;
// ...
}).catch(function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
// The email of the user's account used.
var email = error.email;
// The firebase.auth.AuthCredential type that was used.
var credential = error.credential;
// ...
});
我正在尝试通过 Firebase 身份验证使用 Facebook 登录。我遵循了整个文档。最后,每当我单击登录按钮时,它都会显示一条错误消息:
Cannot pass a read permission (email) to a request for publish authorization
显示错误的行是:
LoginManager.getInstance().logInWithPublishPermissions(LoginActivity.this,Arrays.asList("email", "public_profile"));
有人可以解释我做错了什么吗?我也看过其他答案,但没有任何帮助。
使用 logInWithReadPermissions
而不是 logInWithPublishPermissions
。错误消息非常清楚,您正在尝试使用用于发布权限的函数请求读取权限。
.getInstance().logInWithPublishPermissions
不是 Firebase 身份验证。通过 Firebase JavaScript (web) SDK 可以通过 Facebook 等联合提供商登录。有关详细信息,请参阅 Authenticate Using Facebook Login with JavaScript。
firebase.auth().signInWithPopup(provider).then(function(result) { // This gives you a Facebook Access Token. You can use it to access the Facebook API. var token = result.credential.accessToken; // The signed-in user info. var user = result.user; // ... }).catch(function(error) { // Handle Errors here. var errorCode = error.code; var errorMessage = error.message; // The email of the user's account used. var email = error.email; // The firebase.auth.AuthCredential type that was used. var credential = error.credential; // ... });