Introducción a HMS Core

1

Pasos para el desarrollo de aplicaciones con Huawei

2

¿Qué es HMS Core?

3

Creación del proyecto en Android Studio

4

Creación de la aplicación en App Gallery Connect

5

Configuración de firma SHA-256

6

Configuración de APIs

7

Configuración de Android Studio y Gradle

8

Probando la sincronización de la aplicación

9

Debugging en la nube con Huawei

Autenticación con HMS Account Kit

10

Diseñando nuestra pantalla de login

11

Agregando los métodos de autenticación

12

Verificando la autenticación

13

Agregando el método de logout

Construyendo nuestra cámara de selfies con HMS ML Kit

14

Machine Learning con Huawei

15

Agregando los permisos para acceder a la cámara

16

Diseñando la pantalla personalizada de la cámara

17

Creando la capa de gráficos de la cámara

18

Creando el layout para nuestro rostro

19

Creando el layout del lente de la cámara

20

Creando nuestra actividad de cámara

21

Agregando nuestra cámara personalizada a la actividad

22

Agregando los métodos de verificación de rostro

23

Agregando la detección de rostro y sonrisa individual

24

Agregando la detección de rostro y sonrisa grupal

25

Tomar nuestra imagen y agregar un método de re-toma de foto

26

Guardar la foto en nuestra galeria

Aplicando notificaciones push con HMS Push kit

27

Crear el servicio de push notifications

28

Agregar el servicio de HMS Push kit

29

Verificar la conectividad de las notificaciones en App Gallery Connect

Conclusiones y consejos

30

Tips y solución de inconvenientes frecuentes

31

¿Qué más tiene Huawei?

Aún no tienes acceso a esta clase

Crea una cuenta y continúa viendo este curso

Agregando los métodos de autenticación

11/31
Recursos

Aportes 3

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad? Crea una cuenta o inicia sesión.

Hola
Código documentado en base a lo que pude comprender de la clase:

class AuthActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_auth)


        //Establecemos un listener, de forma que cuando el botón sea presionado dé inicio la autenticación
        btnLogin.setOnClickListener {
            loginHuaweiIdAuth()
        }

    }

    private fun loginHuaweiIdAuth(){
        val mAuthParams = HuaweiIdAuthParamsHelper(HuaweiIdAuthParams.DEFAULT_AUTH_REQUEST_PARAM) //capturamos los parámetros
            .setEmail() //correo del usuario
            .setAccessToken()
            .setProfile() //capturamos todas las configuraciones del Huawei ID, nickname, foto de perfil, avatar ...
            .setIdToken() //Se utilizará mas adelante para el push notification
            .setUid() //Identificador único de cada usuario de Huawei
            .setId()

            .createParams()//Se asignan todos los parámetros anteriores en un objeto, para luego ser accedidos

        /**
         * Variable para acceder al servicio de autenticación
         * recibe como parámetros el context del activity y los parámetros
         */
        val mAuthManager = HuaweiIdAuthManager.getService(this, mAuthParams)


        /**
         * Llamamos el startActivityForResult y pasamos el servicio en forma de 
         * intent y un requestCode
         * requestCode = identificador del servicio de login
         */
        startActivityForResult(mAuthManager.signInIntent, 800)
    }

    override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
        super.onActivityResult(requestCode, resultCode, data)
        if (requestCode == 800){

            /**
             * Este if, cubre si al momento de acceder, el usuario se queda sin 
             * internet o si presiona
             * alguna tecla que haga cerrar o detener el activity
             */
            if (resultCode == Activity.RESULT_CANCELED){

                Toast.makeText(this, "Autenticación Cancelada ...", Toast.LENGTH_LONG).show()
            }else if(resultCode == Activity.RESULT_OK){

                //verificamos que el servicio esté funcionando correctamente
                val authHuaweiIdTask = HuaweiIdAuthManager.parseAuthResultFromIntent(data)

                //Si el resultado es exitoso, procederemos a autenticar
                if (authHuaweiIdTask.isSuccessful){
                    Toast.makeText(this, "Autenticación exitosa!!", Toast.LENGTH_LONG).show()
                }

                //En caso de que no sea exitoso por que la cuenta ya no está activa,  
                // incompleta o por una falla de conexión
                else{
                    Toast.makeText(this, "Autenticación Fallida ...", Toast.LENGTH_LONG).show()
                }
            }
        }
    }

}

A mi no me funcionaba el btnLogin para activiar el evento, pero encontre esta forma

val btnAuthLogin : com.huawei.hms.support.hwid.ui.HuaweiIdAuthButton = findViewById(R.id.btnLogin)

btnAuthLogin.setOnClickListener { }

Esta muy completo account kit, por lo que he revisado en la documentación tambien permite hacer logout y obtener mas datos incluso el numero de telefono