我正在尝试执行一个简单的发布过程:
- (IBAction)directPostClick:(id)sender {
self.statusLabel.text = @"Waiting for authorization...";
if (self.accountStore == nil) {
self.accountStore = [[ACAccountStore alloc] init];
}
ACAccountType * facebookAccountType = [self.accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierFacebook];
NSArray * permissions = @[@"publish_stream", @"user_checkins", @"publish_checkins", @"user_likes", @"user_videos"];
NSDictionary * dict = @{ACFacebookAppIdKey : @"My app id here", ACFacebookPermissionsKey : permissions, ACFacebookAudienceKey : ACFacebookAudienceOnlyMe};
[self.accountStore requestAccessToAccountsWithType:facebookAccountType options:dict completion:^(BOOL granted, NSError *error) {
__block NSString * statusText = nil;
if (granted) {
statusText = @"Logged in";
NSArray * accounts = [self.accountStore accountsWithAccountType:facebookAccountType];
self.facebookAccount = …Run Code Online (Sandbox Code Playgroud) 我试图在Mac OS X 10.8上使用新的ACAccountStore功能通过Facebook登录但我收到一个错误:
Facebook服务器无法满足此访问请求:没有存储app的remote_app_id
当代码执行requestAccessToAccountsWithType消息时,它确实提示我访问Facebook(我允许),并且我确实在我的设置中存储了Facebook凭据.我还有另一个用于OS X旧版本的代码路径,它使用WebView控件登录到Facebook.它确实适用于相同的APP_ID.所以我应该在Facebook开发人员设置中正确设置应用程序.在那里我还缺少一些其他的配置?我在互联网上搜索"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]);
}
}];
Run Code Online (Sandbox Code Playgroud)
关于iPhone上的相同问题(此页面主要是谷歌登陆):问题是:在iPhone上,转到设置,左侧菜单Facebook,然后在正确的用户名/密码 - 登录Facebook.这就是"设置Facebook登录".如果iPhone实际上在"设置Facebook登录"上登录到FB,那么问题就会出现.如果您明确注销"设置Facebook登录"(实际上,可能是卸载FacebookApp),则问题将无法显示.
我尝试使用facebook登录https://developers.facebook.com/docs/getting-started/facebook-sdk-for-ios/3.1/中的facebook教程来实现它但是在警报视图之后要求我允许我应用程序使用您的数据,然后按确定错误
操作无法完成 .(com.facebook.sdk错误2)
请注意iam在simulatore中,我在设置中输入了FB我的帐户,并且记录正确.
调试问题,错误结果如下:
(NSError*)$ 1 = 0x0ac77290错误域= com.facebook.sdk代码= 2"操作无法完成.(com.facebook.sdk错误2.)"UserInfo = 0xac77450 {com.facebook.sdk:ErrorLoginFailedReason = com.facebook.sdk:ErrorLoginFailedReason,com.facebook.sdk:ErrorInnerErrorKey = Error Domain = com.apple.accounts Code = 7"Facebook服务器无法满足此访问请求:没有为app存储remote_app_id"UserInfo = 0xaa91d40 {NSLocalizedDescription = Facebook服务器无法满足此访问请求:没有为应用程序存储remote_app_id}}