0
自从发布新的FBSDK后,我面临着这个问题。Facebook登录后拒绝登录权限
方案:经由FBLogin
1.用户登录到我的应用程序
2.用户下降我的权限
-
的
我该如何为用户提供改变它的可能性? 我的应用程序运行到了这一点,我注意到拒绝的权限,我给我的用户一个通知来更改设置。 但我在这一点上无能为力。
自从发布新的FBSDK后,我面临着这个问题。Facebook登录后拒绝登录权限
方案:经由FBLogin
1.用户登录到我的应用程序
2.用户下降我的权限
我该如何为用户提供改变它的可能性? 我的应用程序运行到了这一点,我注意到拒绝的权限,我给我的用户一个通知来更改设置。 但我在这一点上无能为力。
首先,您不得将所有权限设置为从Facebook强制执行。 虽然如果需要的话可以,那么你可以检查授予的许可或不使用下面的代码
if ([[FBSDKAccessToken currentAccessToken] hasGranted:@"publish_actions"]) {
// TODO: publish content.
} else {
FBSDKLoginManager *loginManager = [[FBSDKLoginManager alloc] init];
[loginManager logInWithPublishPermissions:@[@"publish_actions"]
fromViewController:self
handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
//TODO: process error or result.
}];
}
要检查拒绝权限
FBSDKLoginManager *loginManager = [[FBSDKLoginManager alloc] init];
[loginManager logInWithPublishPermissions:@[@"publish_actions"]
fromViewController:self
handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
if ([result.declinedPermissions containsObject:@”publish_actions”]) {
// TODO: do not request permissions again immediately. Consider providing a NUX
// describing why the app want this permission.
} else {
// ...
}
}];
注意:如果用户拒绝权限,不应该立即再次要求他们。相反,您的应用应该继续运作。您可以考虑提供指导或用户界面,解释授予该权限的好处,但只有在用户执行需要的操作时才再次请求。
编号: https://developers.facebook.com/docs/facebook-login/ios/permissions https://developers.facebook.com/docs/ios/errors
这些其实都是我曾经做过直到现在的步骤。我的问题是处理'流程错误'(你的第一个问题)。有没有办法强制用户提供信息?如果是这样的话:我如何编程重置登录? – JVS