Gigya facebook логин: обработчик завершения не вызывается
Я пытаюсь использовать Gigya-SDK для входа в приложение через Facebook. Настройка на Facebook выглядит хорошо, а вход в родную книгу без Gigya работает нормально. Но когда я вызываю метод Gigya, обработчик завершения после успешного входа в систему на веб-сайте Facebook никогда не вызывается.
Вот мой очень простой код:
[Gigya showLoginProvidersDialogOver:self providers:providers parameters:nil
completionHandler:^(GSUser *user, NSError *error) {
if (!error) {
NSLog(@"works");
}
else {
NSLog(@"Error: %@", error.userInfo);
// If the login was canceled by the user - do nothing. Otherwise, display an
error.
if (error.code != GSErrorCanceledByUser) {
NSLog(@"Error: %@", error.userInfo);
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error"
message:@"An error has
occured. Please try again later"
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[alert show];
}
}
}];
- iOS SDK: 8.1
- Facebbok-SDK: 3,20
- Gigya-SDK: 3.0.6
3 ответа
После нескольких попыток у меня есть решение, которое помогло мне.
[Gigya initWithAPIKey:@"-----------------" APIDomain:@"eu1.gigya.com"];
Я должен был поставить правильный APIDomain. Документы Гигьи относятся только к
[Gigya initWithAPIKey:@"-----------------"];
который использовал домен США по умолчанию.
Есть несколько вещей, которые вам нужно будет проверить:
Ваши настройки разрешений в консоли Gigya для используемого ключа API. Вы должны убедиться, что у вас установлено разрешение "Включить использование на настольном ПК / мобильном устройстве", включенное для ключа API, который вы используете.
Параметры конфигурации провайдера Facebook в консоли Gigya для используемого ключа API. Gigya по умолчанию выберет Facebook API v1 в настройках провайдера; если ваше приложение в социальной сети Facebook новое, оно будет использовать v2 API. Вы должны убедиться, что выбраны правильные настройки.
Если вы используете CNAME, вам необходимо убедиться, что конфигурация CNAME CNAME правильно настроена на ключе API, а настройки консоли разработчика Facebook настроены для использования CNAME.
Если вы вносите какие-либо изменения, обязательно сохраните настройки, прежде чем менять экраны.
Какой результат вы получите с этим:
[Gigya loginToProvider:@"facebook"
parameters:nil
completionHandler:^(GSUser *user, NSError *error) {
if (!error) {
NSLog(@"works");
}
else {
NSLog(@"error");
}
}];