Dzieje się tak dlatego, że robią to Google Hangouts. Firmy nie zawsze udostępniają deweloperom każdą dostępną funkcję i jest to doskonały przykład. Powodem, dla którego udało Ci się to zrobić w Androidzie, było to, że Google postanowił umożliwić programistom większy dostęp do różnych funkcji. W końcu Android jest rozwijany przez Google. Teraz, nie opuszczając aplikacji, zawsze możesz użyć wbudowanego widoku internetowego. Spowoduje to, że użytkownik pozostanie w aplikacji, a zamiast tego wyświetli się widok sieciowy. Nie jest najlepszy na świecie, ale jest lepszy niż wysłanie użytkownika w inne miejsce. Czy wypróbowałeś ten kod:
// Implement these methods only if the GIDSignInUIDelegate is not a subclass of
// UIViewController.
// Stop the UIActivityIndicatorView animation that was started when the user
// pressed the Sign In button
func signInWillDispatch(signIn: GIDSignIn!, error: NSError!) {
myActivityIndicator.stopAnimating()
}
// Present a view that prompts the user to sign in with Google
func signIn(signIn: GIDSignIn!,
presentViewController viewController: UIViewController!) {
self.presentViewController(viewController, animated: true, completion: nil)
}
// Dismiss the "Sign in with Google" view
func signIn(signIn: GIDSignIn!,
dismissViewController viewController: UIViewController!) {
self.dismissViewControllerAnimated(true, completion: nil)
}
Znalazłem to na opublikowanym przez Ciebie linku. Nie uruchomiłem ani nie przetestowałem kodu, ale wydaje mi się, że przedstawiam kontroler widoku zamiast wysyłać cię na safari. Może to być bardziej zgodne z tym, co chcesz.
Aby odpowiedzieć @ Sama pytanie:
„Jak się zalogować do Google przez istniejące zainstalowane aplikacje Google zamiast otwierania URL w Safari?”
Prawdopodobnie można to osiągnąć z Androidem, ale nie z iOS. To kolejny przykład czegoś, co jest ograniczone z powodu wybranej platformy.
Pamiętaj, że niezależnie od wybranej opcji będziesz musiał przestrzegać OAuth 2.0. Sugerowałbym, jeśli w ogóle możliwe, wykorzystanie tego, co zbudował Google dla programistów iOS. Jeśli chodzi o wybór innego konta niż domyślnego, jeśli zdecydujesz się postępować zgodnie z przewodnikiem i zrobić to, co Google stworzył dla programistów iOS, możesz po prostu dotknąć obrazu profilu i przełączyć konta.
TL; DR
https://www.youtube.com/watch?time_continue=227&v=-26DGO_E1ds
Dostałeś jakieś rozwiązania? – diordna