我尝试在 Mac OS X 10.8 上使用新的 ACAccountStore 功能通过 Facebook 登录,但出现错误:
Facebook 服务器无法满足此访问请求:没有存储应用的 remote_app_id
当代码执行 requestAccessToAccountsWithType 消息时,它会提示我访问 Facebook(我允许)并且我确实在我的设置中存储了 Facebook 凭据。我还有另一个旧版 OS X 的代码路径,它使用 WebView 控件登录 Facebook。它确实适用于相同的 APP_ID。所以我应该在 Facebook 开发者设置中正确设置应用程序。我还缺少其他一些配置吗?我在 Internet 上搜索“remote_app_id”,得到的是空集。
ACAccountStore *account = [[ACAccountStore alloc] init];
ACAccountType *accountType = [account accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierFacebook];
NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys: FB_APP_ID, ACFacebookAppIdKey, [NSArray arrayWithObjects:@"email", nil], ACFacebookPermissionsKey, ACFacebookAudienceFriends, ACFacebookAudienceKey, nil];
[account requestAccessToAccountsWithType:accountType options:options completion:^(BOOL granted, NSError *error) {
if (granted) {
NSArray *accountList = [account accountsWithAccountType:accountType];
for (ACAccount *thisAccount in accountList) {
NSLog(@"Found account: %@", [thisAccount accountDescription]);
}
}
else {
NSLog(@"Not granted because: %@", [error localizedDescription]);
}
}];
对 iPhone 开发者有用的提示:100% 展示这个问题:
关于 iPhone 上的相同问题(此页面是该页面的主要 google 登陆):问题是这样的:在 iPhone 上,转到设置,左侧菜单 Facebook,然后在右侧用户名/密码 - 登录 Facebook .这就是“设置 Facebook 登录”。如果 iPhone 实际上是在“设置 Facebook 登录”中登录到 FB,那么问题就会出现。如果您在“设置 Facebook 登录”中明确注销(实际上,可能卸载 FacebookApp),则不会出现该问题。
最佳答案
看起来你必须在 Facebook 应用程序设置中设置你的 iOS/OSX 应用程序的包 ID(在我的情况下是固定的)
关于objective-c - Mac OS X Facebook 登录失败 - 没有存储应用程序的 remote_app_id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12555799/