App de ejemplo de las APIs de Home para Android

La app de ejemplo muestra las funciones básicas de las APIs de Google Home para Android.

Requisitos previos

Para compilar, instalar y probar la app, deberás cumplir con algunos requisitos previos:

  • Android Studio, versión 2024.2.1 ("Ladybug") o posterior Ten en cuenta que es posible que las versiones anteriores no funcionen correctamente con el SDK de las APIs de Home.

    Descarga Android Studio

  • El depurador de Android (adb)

    Instala adb.

    Esto se puede hacer con el SDK Manager.

Para probar las APIs de Home, necesitarás lo siguiente:

  • Un dispositivo Android que ejecute Android 10 o una versión posterior, configurado con una Cuenta de Google que quieras usar para el desarrollo Asegúrate de que esté instalada una versión actualizada de Android Studio y de que hayas accedido con esta cuenta de desarrollo.
  • Una red Wi-Fi
  • Para acceder a los dispositivos Matter y controlarlos, también necesitas una unidad central de Google que admita las APIs de Home. Consulta Conectividad en Android para obtener más información.
  • Al menos un dispositivo compatible en la casa Si este dispositivo (o cualquier otro que quieras probar) usa Thread, la unidad central también debe ser un Thread Border Router (TBR). La app de ejemplo para Android admite los siguientes tipos y atributos de dispositivos:

    • Luz con temperatura de color (encendido y apagado, brillo)
    • Sensor de contacto (estado booleano)
    • Luz regulable (encendido y apagado, brillo)
    • Cerradura
    • Luz de color extendida (encendido y apagado, brillo)
    • Generic Switch
    • Router de borde de Google
    • Cámara de Google
    • Google Doorbell
    • Sensor de ocupación (detección de ocupación)
    • Luz de encendido/apagado (encendido y apagado, brillo)
    • Interruptor de luz de encendido/apagado
    • Unidad de enchufe de encendido/apagado (encendido y apagado)
    • Sensor de encendido/apagado

Descarga el código fuente

El código fuente de la app de ejemplo está disponible en GitHub.

Navega hasta donde quieras guardar el proyecto y, luego, clónalo:

git clone https://github.com/google-home/google-home-api-sample-app-android.git

Configura el SDK

Las APIs de Home para Android en esta versión beta abierta aún no forman parte de las bibliotecas estándar que proporciona Google para el desarrollo. Para desarrollar aplicaciones para Android con las APIs de Home, debes descargar y alojar las bibliotecas de forma local.

Para descargar el SDK de Android de las APIs de Home, primero debes acceder a Google Home Developers.

Accede ahora

Compila la app

  1. Abre Android Studio y, luego, la carpeta del proyecto google-home-api-sample-app-android que se clonó en tu máquina local.
  2. Durante la primera configuración, Android Studio puede tardar hasta 10 minutos en descargar todas las dependencias del proyecto y completar la compilación de Gradle.

  3. Conecta tu computadora a un teléfono Android físico con un cable USB y habilita ADB en las opciones para desarrolladores. Asegúrate de que Android Studio pueda conectarse al teléfono Android a través de ADB.

  4. Cambia el nombre del paquete de la app de ejemplo por uno nuevo que no se haya registrado antes, como uno basado en el nombre de tu organización:

    1. Abre el proyecto.
    2. Expande la jerarquía de fuentes.
    3. Selecciona la parte del paquete que quieres cambiar, es decir, com.example.
    4. Haz clic con el botón derecho en el paquete y selecciona Refactor > Rename… Menú Refactor > Rename
    5. Ingresa el nombre nuevo y haz clic en Refactor.
    6. Edita el archivo build.gradle.kts y cambia android namespace y applicationId por el nuevo nombre del paquete.
  5. Configura el permiso de OAuth en HomeModule.kt. De forma predeterminada, el código fuente de la app de ejemplo usa el permiso https://www.googleapis.com/auth/home.platform.v2. Muchas funciones de la app de ejemplo están restringidas por el permiso home.platform.v2 y requieren la aprobación del socio para acceder a ellas. Para ejecutar la app de ejemplo con el permiso estándar de https://www.googleapis.com/auth/home.platform.selected.devices, abre HomeModule.kt y cambia homePlatformScope en HomeConfig por HOME_PLATFORM_SCOPE_VERSION_1:

    val homeConfig = HomeConfig(
      coroutineContext = Dispatchers.IO,
      factoryRegistryProvider = {
        FactoryConstants.factoryRegistryAllTraitsAllTypes
      },
      homePlatformScope =
        HomeConfig.HomePlatformScope.HOME_PLATFORM_SCOPE_VERSION_1
    )
    

También actualiza homePlatformScope a HOME_PLATFORM_SCOPE_VERSION_1 en switchAccount() en HomeClientProvider.kt. De lo contrario, si seleccionas el ícono de perfil para cambiar de cuenta, la app volverá a HOME_PLATFORM_SCOPE_VERSION_2.

  1. Después de que se descarguen todas las bibliotecas requeridas y se complete la sincronización de Gradle, haz clic en el botón Run para compilar y ejecutar la app. Cuando la app se ejecute correctamente en tu teléfono, verás la página principal de la app de ejemplo.

Crea un certificado de firma

Cuando ejecutas o depuras una app en Android Studio, se genera automáticamente un certificado de depuración destinado al desarrollo y la depuración. Consulta Android Studio: Firma tu compilación de depuración para obtener una explicación completa.

  1. Ejecuta la app en Android Studio para generar un certificado de firma de apps de depuración. Cuando ejecutas o depuras una app en Android Studio, Android Studio genera automáticamente un certificado de firma de apps destinado al desarrollo y la depuración. Consulta Android Studio: Firma tu compilación de depuración para obtener una explicación completa.

    Conecta el dispositivo móvil a la máquina local. Android Studio mostrará una lista de tus dispositivos conectados por número de modelo. Selecciona tu dispositivo de la lista y, luego, haz clic en Run project. Esto compila e instala la app de ejemplo en tu dispositivo móvil.

    Para obtener instrucciones más detalladas, consulta Cómo ejecutar apps en un dispositivo de hardware en el sitio para desarrolladores de Android.

    Ahora, detén la app en ejecución.

  2. Sigue las instrucciones que se detallan en Administra clientes de OAuth / Tipos de aplicaciones / Aplicaciones nativas / Android en el sitio de ayuda de la consola de Google Cloud para obtener la huella digital SHA-1 de tu certificado de depuración.

  1. En la consola de Google Cloud, ve al panel del selector de proyectos y selecciona el proyecto que quieres usar para crear credenciales de OAuth.
  2. Ve a la página APIs y servicios y haz clic en Credenciales en el menú de navegación.
  3. Si aún no configuraste la pantalla de consentimiento para este proyecto de Google Cloud, aparecerá el botón Configurar pantalla de consentimiento. En ese caso, configura la pantalla de consentimiento con el siguiente procedimiento. De lo contrario, continúa con la siguiente sección.

    1. Haz clic en Configurar pantalla de consentimiento. Aparecerá la página Pantalla de consentimiento de OAuth.
    2. Según tu caso de uso, selecciona Interno o Externo y, luego, haz clic en Crear. Se mostrará el panel Pantalla de consentimiento de OAuth.
    3. Ingresa información en la página Información de la app según las instrucciones en pantalla y, luego, haz clic en Guardar y continuar. Aparecerá el panel Permisos.
    4. No necesitas agregar ningún permiso, así que haz clic en Guardar y continuar. Se muestra el panel Usuarios de prueba.
    5. Haz clic en Público y, luego, en el botón + AGREGAR USUARIOS.
    6. Ingresa la dirección de correo electrónico de tu usuario de prueba y haz clic en el botón GUARDAR.
    7. Haga clic en Guardar y continuar. Aparecerá el panel Resumen.
    8. Revisa la información de la pantalla de consentimiento de OAuth y, luego, haz clic en Volver al panel.

Consulta Configura tu pantalla de consentimiento de OAuth en el sitio de ayuda de la consola de Google Cloud para obtener todos los detalles. Asegúrate de agregar al menos un usuario de prueba antes de continuar.

Configura las credenciales de OAuth

  1. Registra la app de ejemplo para OAuth 2.0 y crea credenciales de OAuth siguiendo las instrucciones que se proporcionan en Configura OAuth 2.0.
    1. Indica el tipo de aplicación, que es app nativa o para Android.
    2. Agrega la huella digital SHA-1 al cliente de OAuth siguiendo las instrucciones que se indican en Configura OAuth 2.0 / Aplicaciones nativas / Android en el sitio de ayuda de la consola de Google Cloud. Debes generar la clave SHA-1 a partir de la clave predeterminada de Android Studio durante todo el proceso de desarrollo.

Ejecuta la app

  1. Con el dispositivo móvil conectado a tu máquina local, vuelve a hacer clic en Run project para ejecutar la app de ejemplo en tu dispositivo móvil.

Una vez instalada, la app estará disponible en tu dispositivo móvil como Home API Sample App.