Примечание: Я следую рекомендациям для входа в систему от Native Facebook Login stopped working after SDK update to 3.14.Ошибка входа в систему на SDK SDK
Ошибка заключается в следующем:
2014-10-13 20: 03: 27,378 Регистрация [1916: 407643] Ошибка Domain = com.facebook.sdk Code = 9 «Доступ не предоставлен на счет Facebook. Проверьте настройки устройства. " UserInfo = 0x1753c630 {NSLocalizedDescription = Доступ не был предоставлен учетной записи Facebook . Проверьте настройки устройства. NSLocalizedFailureReason = Доступ имеет не был предоставлен учетной записи Facebook. Проверьте настройки устройства}
Это код ниже:.
// RegistrationManager.m
- (void)setupFacebook
{
FBSessionStateHandler completionHandler = ^(FBSession *session, FBSessionState status, NSError *error) {
[self sessionStateChanged:session state:status error:error];
};
if ([FBSession activeSession].state == FBSessionStateCreatedTokenLoaded)
{
// we have a cached token, so open the session
[[FBSession activeSession] openWithBehavior:FBSessionLoginBehaviorUseSystemAccountIfPresent
completionHandler:completionHandler];
}
else
{
[self clearAllUserInformation];
// create a new facebook session
FBSession *fbSession = [[FBSession alloc] initWithPermissions:@[@"public_profile"]];
[FBSession setActiveSession:fbSession];
[fbSession openWithBehavior:FBSessionLoginBehaviorUseSystemAccountIfPresent completionHandler:completionHandler];
}
}
- (void)clearAllUserInformation
{
[FBSession.activeSession closeAndClearTokenInformation];
[FBSession renewSystemCredentials:^(ACAccountCredentialRenewResult result, NSError *error) {
NSLog(@"%@", error);
}];
[FBSession setActiveSession:nil];
}
// RegistrationViewController.m
- (IBAction)loginButtonPressed:(id)sender
{
// If the session state is any of the two "open" states when the button is clicked
if (FBSession.activeSession.state == FBSessionStateOpen
|| FBSession.activeSession.state == FBSessionStateOpenTokenExtended)
{
// Close the session and remove the access token from the cache
// The session state handler (in the app delegate) will be called automatically
[FBSession.activeSession closeAndClearTokenInformation];
// If the session state is not any of the two "open" states when the button is clicked
} else
{
FBSessionStateHandler completionHandler = ^(FBSession *session, FBSessionState status, NSError *error) {
[registrationManager sessionStateChanged:session state:status error:error];
};
// create a new facebook session
FBSession *fbSession = [[FBSession alloc] initWithPermissions:@[@"public_profile"]];
[FBSession setActiveSession:fbSession];
[fbSession openWithBehavior:FBSessionLoginBehaviorUseSystemAccountIfPresent completionHandler:completionHandler];
}
}
При нажатии на кнопку, он с означает, говорит
2014-10-13 20: 03: 29,560 Регистрация [1916: 407643] Сессия закрыта 2014-10-13 20: 03: 29,561 Регистрация [1916: 407643] пользователь выходит из системы. 2014-10-13 20: 03: 29.573 Регистрация [1916: 407643] Пользователь выходит из системы.