App de exemplo do Android das APIs do Google Home

O app de exemplo mostra os recursos básicos das APIs Google Home para Android.

Pré-requisitos

Para criar, instalar e testar o app, você precisa atender a alguns pré-requisitos:

  • Android Studio, versão 2024.2.1 ("Ladybug") ou mais recente. As versões anteriores a essa podem não funcionar corretamente com o SDK das APIs Home.

    Faça o download do Android Studio

  • O depurador do Android (adb).

    Instalar o adb:

    Isso pode ser feito com o SDK Manager.

Para testar as APIs Home, você vai precisar de:

  • Um dispositivo Android com o Android 10 ou mais recente configurado com uma Conta do Google que você pretende usar para desenvolvimento. Verifique se uma versão atualizada do Android Studio está instalada e se você fez login com essa conta de desenvolvimento.
  • Uma rede Wi-Fi.
  • Para acessar e controlar dispositivos Matter, você também precisa de um hub do Google compatível com as APIs Home. Consulte Conectividade no Android para mais detalhes.
  • Pelo menos um dispositivo compatível na casa. Se esse dispositivo (ou qualquer outro que você queira testar) usar o Thread, o hub também precisará ser um Thread Border Router (TBR). Os seguintes tipos e atributos de dispositivo são compatíveis com o app de exemplo para Android:

    • Luz de temperatura da cor (ligar e desligar, brilho)
    • Sensor de contato (estado booleano)
    • Luz regulável (ligar e desligar, brilho)
    • Fechadura de porta
    • Luz colorida estendida (ligar e desligar, brilho)
    • Interruptor genérico
    • Roteador de borda do Google
    • Câmera do Google
    • Google Doorbell
    • Sensor de presença (detecção de presença)
    • Luz liga/desliga (ligar e desligar, brilho)
    • Interruptor de luz liga/desliga
    • Unidade de plug-in de ligar/desligar (ligar e desligar)
    • Sensor de ativação/desativação

Faça o download do código-fonte

O código-fonte do app de exemplo está disponível no GitHub.

Navegue até o local em que você quer salvar o projeto e clone-o:

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

configurar o SDK

As APIs Home para Android nesta versão Beta aberta ainda não fazem parte das bibliotecas padrão fornecidas pelo Google para desenvolvimento. Para desenvolver apps Android com as APIs Home, é necessário fazer o download e hospedar as bibliotecas localmente.

Para fazer o download do SDK do Android das APIs Home, primeiro faça login no Google Home Developers.

Faça login agora mesmo!

Criar o app

  1. Abra o Android Studio e, em seguida, a pasta do projeto google-home-api-sample-app-android que foi clonada para sua máquina local.
  2. Durante a primeira configuração, o Android Studio pode levar até 10 minutos para baixar todas as dependências do projeto e concluir o build do Gradle.

  3. Conecte o computador a um smartphone Android físico usando um cabo USB e ative o ADB nas opções do desenvolvedor. Verifique se o Android Studio pode se conectar ao smartphone Android pelo ADB.

  4. Mude o nome do pacote do app de exemplo para um novo que não tenha sido registrado antes, como um baseado no nome da sua organização:

    1. Abra o projeto.
    2. Abra a hierarquia de origem.
    3. Selecione a parte do pacote que você quer mudar, ou seja, com.example.
    4. Clique com o botão direito do mouse no pacote e selecione Refactor > Rename.... Menu Refatorar > Renomear
    5. Digite o novo nome e clique em Refactor.
    6. Edite o arquivo build.gradle.kts, mudando o android namespace e o applicationId para o novo nome do pacote.
  5. Configure o escopo do OAuth em HomeModule.kt. Por padrão, o código-fonte do app de exemplo usa o escopo https://www.googleapis.com/auth/home.platform.v2. Muitos recursos no app de exemplo são controlados pelo escopo home.platform.v2 e exigem a aprovação do parceiro para serem acessados. Para executar o app de exemplo com o escopo padrão https://www.googleapis.com/auth/home.platform.selected.devices, abra HomeModule.kt e mude homePlatformScope em HomeConfig para HOME_PLATFORM_SCOPE_VERSION_1:

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

Atualize também homePlatformScope para HOME_PLATFORM_SCOPE_VERSION_1 em switchAccount() em HomeClientProvider.kt. Caso contrário, selecionar o ícone de perfil para trocar de conta reverte o app para HOME_PLATFORM_SCOPE_VERSION_2.

  1. Depois que todas as bibliotecas necessárias forem baixadas e a sincronização do Gradle for concluída, clique no botão Run para criar e executar o app. Quando o app estiver em execução no smartphone, você verá a página principal do app de exemplo.

Criar um certificado de assinatura

Quando você executa ou depura um app no Android Studio, ele gera automaticamente um certificado de depuração destinado ao desenvolvimento e à depuração. Consulte Android Studio: assinar o build de depuração para uma explicação completa.

  1. Gere um certificado de depuração de assinatura de apps executando o app no Android Studio. Quando você executa ou depura um app no Android Studio, o Android Studio gera automaticamente um certificado de assinatura de apps destinado ao desenvolvimento e à depuração. Consulte Android Studio: assinar o build de depuração para uma explicação completa.

    Conecte o dispositivo móvel à máquina local. O Android Studio vai listar os dispositivos conectados por número de modelo. Selecione seu dispositivo na lista e clique em Run project. Isso cria e instala o app de exemplo no seu dispositivo móvel.

    Para instruções mais detalhadas, consulte Executar apps em um dispositivo de hardware no site para desenvolvedores Android.

    Agora, interrompa o app em execução.

  2. Para receber a impressão digital SHA-1 do certificado de depuração, siga as instruções detalhadas em Gerenciar clientes OAuth / Tipos de aplicativos / Apps nativos / Android no site de ajuda do console do Google Cloud.

  1. No console do Google Cloud, acesse o painel do seletor de projetos e selecione o projeto que você quer usar para criar credenciais do OAuth.
  2. Acesse a página APIs e serviços e clique em Credenciais no menu de navegação.
  3. Se você ainda não configurou a tela de permissão para este projeto do Google Cloud, o botão Configurar tela de permissão vai aparecer. Nesse caso, configure a tela de permissão usando o procedimento a seguir. Caso contrário, passe para a próxima seção.

    1. Clique em Configurar tela de consentimento. A página Tela de permissão OAuth é exibida.
    2. Dependendo do seu caso de uso, selecione Interno ou Externo e clique em Criar. O painel Tela de permissão OAuth é exibido.
    3. Insira as informações na página Informações do app de acordo com as instruções na tela e clique em Salvar e continuar. O painel Escopos é exibido.
    4. Não é necessário adicionar escopos. Clique em Salvar e continuar. O painel Usuários de teste é exibido.
    5. Clique em Público e no botão + ADICIONAR USUÁRIOS.
    6. Insira o endereço de e-mail do usuário de teste e clique no botão SALVAR.
    7. Clique em Salvar e continuar. O painel Resumo é exibido.
    8. Revise as informações da tela de permissão OAuth e clique em Voltar para o painel.

Consulte Como configurar a tela de permissão OAuth no site de ajuda do console do Google Cloud para ver todos os detalhes. Adicione pelo menos um usuário de teste antes de continuar.

Configurar credenciais do OAuth

  1. Registre o app de exemplo para o OAuth 2.0 e crie credenciais do OAuth seguindo as instruções em Como configurar o OAuth 2.0.
    1. Indique o tipo de aplicativo, que é app nativo/app Android.
    2. Adicione a impressão digital SHA-1 ao cliente OAuth seguindo as instruções em Como configurar o OAuth 2.0 / Apps nativos / Android no site de ajuda do console do Google Cloud. Gere a chave SHA-1 com base na chave padrão do Android Studio durante todo o processo de desenvolvimento.

Executar o app

  1. Com o dispositivo móvel conectado à máquina local, clique em Run project novamente para executar o app de exemplo no dispositivo móvel.

Depois de instalado, o app vai estar disponível no seu dispositivo móvel como Home API Sample App.