Google SignIn iOS GIDSIgnIn внезапно завершился неудачно

Я использую GIDSignIn несколько месяцев, и раньше он работал нормально. Пользователь успешно входит в систему с помощью приложения Google или браузера в приложении.

Сегодня я получил несколько сообщений о том, что пользователи не могут войти в систему, и я подтвердил проблему своими собственными тестами.

GIDSignIn теперь переходит к традиционному способу, открывая браузер в приложении, чтобы предложить пользователю войти в систему (даже если с установленным приложением Google). После входа он остается в поисковой системе Google.com и больше не возвращается в приложение.

Интересно, что-то не так со стороной Google?


person neobie    schedule 06.04.2016    source источник
comment
Я тоже сталкиваюсь с той же проблемой. Я показывал поток входа только в webView, но с последних 2 дней он открывается в браузере. Теперь я добавил [GIDSignIn sharedInstance] .allowsSignInWithBrowser = NO; Теперь все работает нормально.   -  person Sujit    schedule 07.04.2016
comment
Я работаю в команде входа в Google. Можете ли вы привести пример общедоступного приложения, в котором это происходит, сведения о среде (версия iOS, версия SDK, модель устройства и т. Д.) И любую другую информацию о шагах для воспроизведения? Мы расследуем это как можно скорее.   -  person Steven    schedule 07.04.2016
comment
Привет, Стивен, ты можешь попробовать известное приложение Trello. Я использую ipad ios 9.3.1. такое бывает на iphone 6s plus, а также на iphone ios 8.4. Я пробовал использовать пример приложения для входа в Google, также поставляемый с SDK. Он не вызывал приложение Google для входа, вместо этого вызывается браузер сафари. Вы также можете попробовать мое приложение KLSE Screener appsto.re/my/wjtwJ.i. Мне нужно добавить структуру safariservice, чтобы войти в систему, работающую с браузером.   -  person neobie    schedule 08.04.2016
comment
Привет, Стивен, просто хочу сообщить, что моя обновленная версия приложения одобрена Apple (с фреймворком safariservice). Надеюсь, вы, ребята, сможете решить проблему, почему он не использует приложение Google для входа, как раньше.   -  person neobie    schedule 08.04.2016
comment
@Sujit, вы можете войти в систему через приложение Google?   -  person neobie    schedule 08.04.2016
comment
@neobie Да, я могу. Я написал этот код в ViewController, и этот контроллер представлен в rootViewController. - (void) signIn {[GIDSignIn sharedInstance] .clientID = kClientID; [GIDSignIn sharedInstance] .delegate = self; [GIDSignIn sharedInstance] .uiDelegate = self; [GIDSignIn sharedInstance] .shouldFetchBasicProfile = ДА; [GIDSignIn sharedInstance] .allowsSignInWithBrowser = NO; [GIDSignIn sharedInstance] .allowsSignInWithWebView = ДА; [[GIDSignIn sharedInstance] signIn]; }   -  person Sujit    schedule 11.04.2016
comment
@Sujit, могу я узнать, как называется ваше приложение, чтобы я мог порекомендовать?   -  person neobie    schedule 18.04.2016
comment
@neobie, он все еще находится в стадии разработки. Похоже, вы не обработали обратный вызов входа в Google в методе делегата UIApplication - (BOOL) application: (UIApplication *) application openURL: (NSURL *) url sourceApplication: (NSString *) sourceApplication annotation: (id) annotation   -  person Sujit    schedule 18.04.2016


Ответы (1)


Предполагая, что вы, ребята, не нашли исправления (@neobie: я пробовал ваше приложение KLSE Screener, а также приложение Trello), я предполагаю, что ответ заключается в том, что в настоящее время невозможно использовать Google SignIn на iOS без прохождения через вход -app Браузер или Safari.

Но я очень надеюсь, что ошибаюсь - так как я тоже пытаюсь войти в систему с помощью приложения Google.

Мои выводы на данный момент:

  • Setting allowSignInWithWebView = false and allowsSignInWithBrowser = false doesn't seem to do anything. The webview still pops up.
    • I double-checked the URL Schemes (one containing REVERSED_CLIENT_ID, one containing Bundle ID) - that should not be the problem.
  • Я не уверен, что Google определяет как "способное приложение Google" или "подходящие приложения Google" в "GIDSignIn class documentation", но я установил Chrome, Google+ и Gmail на свое тестовое устройство, и это не помогает.
  • В той же документации GIDSignIn говорится, что checkGoogleSignInAppInstalled устарела и «всегда отвечает NO на iOS 9 или выше». Я не понимаю, что это значит, и не могу найти дополнительной информации по этому поводу. Но это не звучит многообещающе.
  • Кроме того, у меня также было много проблем с «родным» входом в Facebook - и я, наконец, обнаружил, что установка loginBehavior = FBSDKLoginBehaviorSystemAccount решает эту проблему, хотя я не совсем понимаю, почему FBSDKLoginBehaviorNative не работает. См. эту ветку. Обратите внимание, что для Facebook необходимо установить несколько LSApplicationQueriesSchemes, но это не должно требоваться для GIDSignIn?

Так что, пожалуйста, если я ошибаюсь, я буду рад поправиться - скажите мне.

person Free Willaert    schedule 23.04.2016
comment
Я не использую вход в facebook, поэтому я не уверен. Вход в приложение google просто внезапно перестает корректно работать без каких-либо изменений кода. Мне интересно, это проблема с IOS или приложением Google. - person neobie; 23.04.2016