认识用户是否已经在iOS 6设置中定义了本地的Facebook帐户

有没有办法知道与FACEBOOK SDK 3.1和iOS 6,如果用户已经在iPhone设置为自己的Facebook使用定义他的Facebook帐户?

我想要做的是打开我的应用程序,如果用户在iPhone设置中定义了一个“本地Facebook帐户”,立即显示“允许/不允许”的iOS 6警报。 但是我只想为了本土整合而做。 我的意思是,如果知道我可以尝试使用FBSession的“openSession”,它会显示,但如果用户没有定义本机帐户,我不希望应用程序去Safari或Facebook的应用程序。 所以我想尝试只有在用户已经定义了一个帐户连接。

任何人都知道的方式知道?

这对我有用:

//Step 1. create and store an ACAccountStore in an ivar ACAccountStore* as = [[ACAccountStore alloc] init]; self.accountStore = as; [as release]; //Step 2. Get the facebook account type //Do not use the constant if you are in iOS5, use this string:@"com.apple.facebook" ACAccountType* at = [self.accountStore accountTypeWithAccountTypeIdentifier: @"com.apple.facebook"]; //Step 3. request access to the facebook account, passing your facebook app id __block typeof(self) bself = self; [self.accountStore requestAccessToAccountsWithType:at options:@{(NSString *)ACFacebookAppIdKey: kFBAppId } completion:^(BOOL granted, NSError *error) { //Step 4. Check if the account is integrated natively //Note: if granted is NO, check for the error to see what's going on. BOOL nativeAccount = granted == YES && [bself.accountStore accountsWithAccountType:at]; //Step 5. clean the account store. bself.accountStore = nil; }];