O Google Home Sample App for Matter usa o Google Home Mobile SDK para criar um app Android semelhante ao Google Home app (GHA). Este app de exemplo oferece os seguintes recursos:
- Comissionar dispositivos Matter físicos e virtuais para o fabric local do Android
- Comissionar dispositivos físicos e virtuais para um fabric de desenvolvimento
- Controlar dispositivos no seu fabric de desenvolvimento, por exemplo, acender uma luz
- Os recursos de vários administradores permitem que você compartilhe dispositivos no fabric de desenvolvimento com outros apps e, por outro lado, possa incluir no fabric de desenvolvimento dispositivos compartilhados de outros apps.
- Utilitários para desenvolvedores
Este guia descreve como instalar o APK do Sample App for Matter e usá-lo para comissionar, controlar e compartilhar dispositivos Matter.
Para fazer o download do código-fonte, aprenda a integrar o Mobile SDK e personalizar telas no Android Studio. Teste nosso codelab Sample App for Matter.
Acesse o codelab Sample App for Matter
Pré-requisitos
- Um dispositivo Android O (8.1, nível 27 da API) ou mais recente disponível para testes. Para verificar se o dispositivo tem suporte à Matter mais recente, consulte o guia Verificar módulos e serviços do Matter.
- Crie um dispositivo Matter com recursos de ativação/desativação. Este
app de exemplo funciona com um dispositivo virtual e um ESP32.
- Dispositivo virtual Matter (MVD, na sigla em inglês). Para minimizar os problemas do ambiente, recomendamos que você use o MVD para começar. Se você tiver problemas, será muito mais fácil investigar se o app de exemplo é usado contra o MVD.
- Crie um dispositivo virtual Matter
com o app
rootnode_dimmablelight_bCwGYSDpoe
. Ao criar uma integração Matter no Google Home Developer Console, use0xFFF1
como o ID do fornecedor e0x8000
como o ID do produto. - Crie um dispositivo Espressif
com o
all-clusters-app
. Ao criar uma integração Matter no Developer Console, use0xFFF1
como o ID do fornecedor e0x8001
como o ID do produto.
Não é necessário um hub, por exemplo, um Google Nest Hub (2nd gen), para comissionar e controlar dispositivos com o Sample App for Matter.
Instalar
Acesse a seção "Releases" no repositório do GitHub Sample App for Matter. Para a versão mais recente, localize o APK chamado
GHSAFM-version-default-debug.apk
na seção "Assets". Não selecione otargetcommissioner
.Instale o Android Debug Bridge (adb):
Conecte seu dispositivo Android por USB, ative a Transferência de arquivos e instale o APK:
$ adb unroot && adb install GHSAFM-version-default-debug.apk
Comissionar dispositivos
Ao iniciar o app de exemplo pela primeira vez, você vai receber uma caixa de diálogo com um link para o codelab Sample App for Matter. Se você selecionar Don't show this message again, poderá mostrar a caixa de diálogo novamente a qualquer momento atualizando suas preferências na seção "Administrador" do app.
Nas próximas etapas, você vai adicionar um dispositivo Matter ao fabric local do Android, junto com um fabric de desenvolvimento local apenas para o app de exemplo.
O que são os tecidos do Matter?
Um fabric Matter é um domínio de confiança compartilhado entre dispositivos em uma rede doméstica que permite a comunicação entre eles.
Os dispositivos podem ter um ou mais fabrics que correspondem a uma plataforma, um app ou um grupo de dispositivos que interagem entre si. Os fabrics têm um ID exclusivo, e os dispositivos compartilham o mesmo conjunto de credenciais e a autoridade certificadora (AC). Essas credenciais são atribuídas durante a comissionamento do Matter.
Para comissionar um dispositivo Matter, siga estas etapas:
Toque no botão
Adicionar dispositivo para iniciar o processo de comissionamento.Em seguida, o controle é transferido para Google Play services, que é iniciado de uma chamada para Mobile SDK. Para estabelecer a prova de posse, leia o código QR ou toque em Usar código de pareamento.
Quando a ativação for concluída, insira um Nome do dispositivo e toque em Concluído.
Agora seu dispositivo está conectado ao fabric local do Android e ao fabric de desenvolvimento.
Todo o trabalho de comissionamento e as telas associadas são processados por Play services ao comissionar dispositivos. Isso oferece uma experiência de usuário consistente e elimina a necessidade de processar permissões sensíveis, por exemplo, credenciais de Wi-Fi e Thread.
Controlar dispositivos
O fabric de desenvolvimento cria as credenciais para controlar dispositivos Matter diretamente no app de exemplo.
Na tela inicial, você pode ligar ou desligar o dispositivo. Toque no dispositivo para acessar os detalhes dele.
Dispositivos compartilhados
O compartilhamento de um dispositivo é chamado de fluxo de vários administradores na especificação Matter. Depois que um dispositivo é comissionado para o app de exemplo, ele pode ser compartilhado com outros ecossistemas.
Para compartilhar seu dispositivo Matter com outros ecossistemas, você precisa ter outra plataforma instalada no dispositivo Android. Essa plataforma externa se torna o comissário de destino. Criamos outra instância do app de exemplo que você pode usar como o comissário de destino.
Acesse a seção "Releases" no repositório do GitHub Sample App for Matter. Para a versão mais recente, localize o APK chamado
GHSAFM-version-targetcommissioner-debug.apk
na seção "Assets". Não selecione odefault
.Instale o comissário de destino.
$ adb unroot && adb install GHSAFM-version-targetcommissioner-debug.apk
Na tela inicial, toque no dispositivo para mostrar as informações dele. Toque em Compartilhar.
O app de exemplo chama a API Share Mobile SDK e, mais uma vez, o controle é transferido para Play services.
Uma página de compartilhamento é exibida, permitindo que você escolha o app ou a plataforma com que quer parear o dispositivo. Essa tela oferece duas maneiras de compartilhar o dispositivo:
- Manualmente usando um código de configuração para compartilhar com o app do emissor de destino
- Com um app Android local registrado como comissário Matter
O app do comissário de destino é identificado como GHSAFM-TC. Toque nesta instância do app de exemplo para compartilhar seu dispositivo.
Em seguida, o app externo (comissário de destino) conclui a comissionamento do dispositivo no próprio fabric.
Configurações
Na tela inicial, clique no ícone
de configurações. Aqui você tem as opções de atualizar as preferências do usuário, receber ajuda e saber mais sobre o app.Notificação de meia página
Na tela "Configurações", é possível desativar as notificações de descoberta proativas que podem gerar comissão para dispositivos Matter.
Se o app fornecer o próprio fluxo de descoberta ou comissionamento de Matter, talvez seja melhor suprimir essas notificações para evitar interrupções. Consulte Suprimir notificações de descoberta com comissionamento para mais informações.
Utilitários para desenvolvedores
Na tela "Configurações", também é possível acessar as Ferramentas para desenvolvedores.
Para analisar o conteúdo dos repositórios da DataStore de preferências do dispositivo e do usuário no Logcat, siga estas etapas:
Clique em Registrar conteúdo dos repositórios.
Clique em OK na caixa de diálogo e marque Logcat.
Feedback e ajuda
Para enviar suas ideias ou feedback sobre como podemos melhorar a experiência de desenvolvimento com o Sample App for Matter, preencha nosso formulário de feedback.
Se você tiver problemas com o Sample App for Matter, siga as etapas para verificar seu ambiente:
Se você tiver dúvidas sobre o uso do app de exemplo ou descobrir um bug no código, envie os problemas para o Issue Tracker no repositório do GitHub:
Para receber orientações oficiais do Google sobre questões técnicas, use o Fórum para desenvolvedores de casas inteligentes:
Para receber suporte técnico da comunidade, use a tag google-smart-home
no
Stack Overflow: