Selector de cuenta iOS de inicio de sesión de Google
Estoy utilizando el inicio de sesión de Google en mi aplicación de iOS. Seguí el tutorial de Google ( https://developers.google.com/identity/sign-in/ios/sign-in#add_the_sign-in_button ) que utiliza un GIDSignInButton que el usuario tiene que hacer clic. Cuando hace clic en él es redirigido a Safari que se ve así:
- ¿Por qué no puedo iniciar sesión para probar las cuentas de usuario de Facebook desde la aplicación nativa de Android?
- GCM, ID de registro y manejo de inicio de sesión / cierre de sesión de usuario
- Inicia sesión con Twitter en la aplicación de phonegap
- Usando ParseFacebookUtils.logInWithReadPermissionsInBackground no guarda los permisos de Facebook Android
- 'Solicitud no registrada' mostrada en la pantalla de consentimiento de inicio de sesión de Google+
El problema con esto es que tengo varias cuentas de Google y me gustaría poder elegir cuál de ellas quiero usar. Ahora solo se necesita uno de ellos automáticamente y todo lo que tengo que hacer es presionar "negar" o "permitir". Además, no me gusta el hecho de que la aplicación se redirige a Chrome. Idealmente lo que quiero es algo como la aplicación de Hangouts de Google en iOS:
Le muestra todas las cuentas que ha utilizado para iniciar sesión en cualquier aplicación de Google anteriormente y le permite decidir cuáles usar con la aplicación sin salir de la aplicación. En Android tengo algo similar para mi aplicación:
¿Cómo puedo lograr este tipo de comportamiento (no dejas app + account chooser) en mi aplicación iOS?
- ¿Cuál es la forma correcta de crear una pantalla de inicio de sesión / actividad en Android?
- No se pudo encontrar información sobre el proveedor de com.facebook.katana.provider.AttributionIdProvider
- Subrayar texto debajo de la propiedad de texto
- No se puede resolver isConnected () - Inicio de sesión de Google+ en android studio
- ¿Cómo comprobar WiFi es pasar a través de inicio de sesión de página web?
- Clave única de acceso a Facebook de Facebook
- Android Facebook SDK 4.5.0 Login-Logout Problema Invalid Key Hash Error, al intentar iniciar sesión nuevamente
- Cómo enviar datos POST con código en una vista web de Android
La razón por la que son capaces de hacer eso en Google Hangouts es porque está hecha por Google. Las empresas no siempre ponen todas las funciones a disposición de los desarrolladores y este es un excelente ejemplo de ello. La razón por la que fue capaz de hacer esto en Android fue porque Google decidió permitir a los desarrolladores más acceso a diferentes características. Después de todo, Android es desarrollado por Google. Ahora como para no dejar la aplicación siempre se puede utilizar una vista web incorporado. Esto mantendrá al usuario en la aplicación y en su lugar aparecerá una vista web de forma modal. No es el mejor del mundo, pero es mejor que tener el usuario enviado a otro sitio. ¿Has probado este código?
// 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) }
Encontré esto en el enlace que publicaste. No he funcionado o probado el código pero aparece presentar un regulador de la visión en vez de enviarle al safari. Esto puede ser más a lo largo de las líneas de lo que quieres.
Para responder a la pregunta de @ Sam:
"¿Cómo iniciar sesión en Google por las aplicaciones de Google instaladas existentes en lugar de abrir URL en Safari?"
Probablemente podría lograr esto con Android, pero no con iOS. Este es otro ejemplo de algo que está restringido debido a la plataforma seleccionada.
Recuerde que cualquier opción que termine eligiendo todavía será requerido adherirse a OAuth 2.0. Yo sugeriría si en todo lo posible utilizando lo que Google ha construido para los desarrolladores de iOS para su uso. Cuando se trata de seleccionar una cuenta distinta a la predeterminada, si eligió seguir la guía y hacer lo que Google creó para los desarrolladores de iOS, puede simplemente tocar la imagen de perfil y cambiar cuentas.
TL, DR
https://www.youtube.com/watch?time_continue=227&v=-26DGO_E1ds
- Cómo implementar la ampliación de animación en elemento compartido en la transición de actividad
- Desactivar Google Analytics de los informes de pre-lanzamiento de Android