を呼び出す[ACAccountStore requestAccessToAccountsWithType:options:completion]
と、ユーザーはアプリにアクセス許可を付与するかどうかを尋ねる UIAlert を表示することになっていると理解しています。
このコードを実行すると、プロンプトは表示されず、granted
変数は常に「false」です
-(void)myfunction {
if (!_accountStore) _accountStore = [[ACAccountStore alloc] init];
ACAccountType *fbActType = [_accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierFacebook];
NSDictionary *options = [[NSDictionary alloc] initWithObjectsAndKeys:
(NSString *)ACFacebookAppIdKey, @"##########",
(NSString *)ACFacebookPermissionsKey, [NSArray arrayWithObject:@"email"],
nil];
[_accountStore requestAccessToAccountsWithType:fbActType options:options completion:^(BOOL granted, NSError *error) {
NSLog(@"Home.m - getFBDetails - Check 2");
if (granted == YES) {
NSLog(@"Success");
NSArray *accounts = [_accountStore accountsWithAccountType:fbActType];
_facebookAccount = [accounts lastObject];
[self me];
} else {
NSLog(@"ERR: %@ ",error);
// Fail gracefully...
}
}
];
}
そして、私はエラーを受け取ります:ERR: Error Domain=com.apple.accounts Code=8 "The operation couldn’t be completed. (com.apple.accounts error 8.)"
更新:私はいくつかのテストを行いました。使用して実行するACAccountTypeIdentifierTwitter
と、Twitter アカウントに接続するように求められるので、Facebook の設定に問題があると思います ...