App de exemplo
Se você encontrar problemas ao usar as APIs Home, colete registros para mais depuração. A coleta de registros do dispositivo móvel exige o Xcode. Se você precisar de ajuda do Google, colete os registros do dispositivo iOS e do hub e abra um tíquete no Issue Tracker com as informações e os registros relevantes associados a ele.
Coletar registros do iOS
O dispositivo móvel precisa estar conectado à máquina local para todas as etapas que envolvem o Xcode.
Os registros de apps e do SDK são exibidos e podem ser coletados diretamente no console do Xcode. Quando o dispositivo móvel está conectado à máquina local e você executa o aplicativo pelo Xcode, o console captura e transmite automaticamente os registros de saída padrão (stdout) e de erro padrão (stderr) da camada de aplicativo e do SDK Home integrado. Isso oferece uma maneira simples de monitorar processos de inicialização em tempo real, interações de API e eventos do SDK durante o desenvolvimento e a depuração.
Coletar registros de extensão do Xcode
Se você encontrar problemas ao usar as APIs Home, colete registros para mais depuração.
No Xcode, acesse Debug na barra de menus na parte de cima e clique em Attach to Process by PID or Name.

Em PID or Process Name, selecione MatterExtension e clique em Attach.

Você vai ver Waiting to attach to MatterAddDeviceExtension on iPhone se clicar no canto superior direito.

Clique na guia e selecione MatterAddExtension.

O console vai registrar o registro de extensão.
Sherlog: rastreamento de eventos entre pilhas
O Sherlog é um serviço de rastreamento em tempo real que oferece uma visão completa das interações entre a infraestrutura do Google e os serviços de nuvem de parceiros.
Pré-requisito: o rastreamento exige o uso de uma conta compartilhada e coordenada pelo Google (por exemplo, uma conta registrada no GReg ou de demonstração).
Objetivo principal: depurar defeitos funcionais e problemas de integração de nuvem para nuvem (C2C, na sigla em inglês), como falhas de vinculação de contas ou estados de dispositivos incorretos, sem exigir mudanças no código de produção.
Recursos: fornece gráficos de chamadas RPC completos, payloads de solicitação/resposta e metadados para intents SYNC, EXECUTE, QUERY e vinculação de contas.
Registros de dispositivos do hub do Fuchsia
É possível coletar registros dos seguintes hubs do Fuchsia usando esse método: * Google Nest Hub (2ª geração) * Google Nest Hub Max
Para ativar um hub para recuperação de registros locais:
- Envie um e-mail com o número de série e o modelo dos dispositivos para o gerente técnico de contas (TAM) do Google. Eles podem ser encontrados em letras pequenas abaixo do dispositivo.
- Depois de permitir a lista de permissões, ative o recurso seguindo estas etapas:
- No hub:
- Deslize de cima para baixo na tela.
- Toque no ícone de configurações
- Encontre a versão do Fuchsia: em um Nest Hub (2ª geração), acesse Informações do dispositivo > Informações técnicas > Versão do Fuchsia.
- Toque em "Versão do Fuchsia" sete vezes. Isso vai ativar as opções do desenvolvedor.
- Volte ao menu de nível superior.
- Toque em "Opções do desenvolvedor".
- Toque em "Registro de parceiros".
- O recurso será ativado por 24 horas. Depois disso, reative o recurso de registro a partir da etapa 5.
- No hub:
- Consiga o endereço IP do hub:
- No hub, se ele tiver uma tela:
- Deslize de cima para baixo na tela.
- Toque no ícone de configurações
- Encontre o endereço IP do dispositivo: em um Nest Hub (2ª geração), acesse Informações do dispositivo > Informações técnicas > Endereço IP.
- No app Google Home (GHA) no smartphone:
- Toque no dispositivo para abrir a página de detalhes.
- Toque no ícone de configurações para abrir a página de configurações.
- Encontre o endereço IP do dispositivo: acesse Informações do dispositivo > Informações técnicas > Endereço IP.
- No hub, se ele tiver uma tela:
- Para recuperar registros do hub, faça uma solicitação HTTP GET para o hub de um computador na mesma rede Wi-Fi.
- Observe a porta e o caminho do endpoint:
curl -k -X GET https://ip-address:8443/setup/get_logs --output output-file - A conexão pode ser mantida aberta por apenas um minuto, mas os dados recuperados do buffer geralmente têm eventos anteriores de 20 a 30 minutos.
- O ideal é que os registros sejam extraídos usando esse método imediatamente após a conclusão de um procedimento de teste para garantir que o buffer contenha conteúdo relevante para o teste (semelhante aos relatórios de bugs do Android).
- Observe a porta e o caminho do endpoint:
Automações
Detecção de borda
As automações no ecossistema do Google Home apresentam detecção de borda, que é uma lógica que verifica se um iniciador só é ativado quando há uma mudança de estado real, em vez de uma atualização de estado que apenas repete o estado anterior do dispositivo.
Por exemplo, se acender uma luz for um acionador, a detecção de borda vai verificar se o acionador só será ativado se o dispositivo de luz passar de desligado para ligado, em vez de ligado para ligado (sem mudança).
A automação não se comporta como esperado
Depois de considerar a detecção de borda, se uma automação não se comportar como esperado:
Verifique cada dispositivo para garantir que ele esteja funcionando corretamente, independentemente da automação.
Confira o gráfico de automação, comparando-o com o DSL de automação, para revelar quaisquer suposições potencialmente incorretas da sua parte.
Observe o estado do dispositivo no app Google Home durante a execução da automação.
Verifique se todos os dispositivos referenciados pela automação estão presentes na estrutura em que você espera que estejam. Excluir um dispositivo do qual uma automação depende pode ter consequências indesejadas. Consulte Impacto da exclusão de dispositivos nas automações.
A automação é executada quando não deveria
Se a automação for executada quando não deveria, examine os critérios do iniciador. Talvez seja necessário adicionar outra lógica para garantir que uma mudança de estado seja capturada apenas uma vez e acione a automação apenas uma vez.
A automação não é compilada
Verifique se o app contém todas as importações necessárias, incluindo cada classe correspondente aos diferentes tipos de nós, bem como os recursos que você está referenciando.
A criação de automação falha na validação
Se a criação de automação não passar na validação, uma mensagem de aviso ou erro vai fornecer informações sobre o problema. Para mais informações, consulte a
ValidationIssueType referência.
OAuth
Se você já tem um cliente OAuth
Se você já tiver um cliente OAuth verificado para um app publicado, poderá usar o cliente OAuth atual para testar as APIs Home.
O registro Google Home Developer Console não é necessário para testar e usar as APIs Home. No entanto, você ainda precisará de um registro aprovado Developer Console para publicar o app, mesmo que tenha um cliente OAuth verificado de outra integração.
As seguintes considerações se aplicam:
Há um limite de 100 usuários ao usar um cliente OAuth. Para informações sobre como adicionar usuários de teste, consulte Gerar o ID do cliente OAuth. Independente da verificação do OAuth, há um limite imposto pelas APIs Home de 100 usuários que podem conceder permissões ao aplicativo. Essa limitação é removida após a conclusão do registro.Developer Console
Developer Console registro deve ser enviado para aprovação quando você estiver pronto para restringir as concessões de tipo de dispositivo pelo OAuth em preparação para atualizar o app com as APIs Home.
Para Google Cloud apps que ainda estão pendentes de verificação do OAuth, os usuários não podem concluir o fluxo do OAuth até que a verificação seja concluída. As tentativas de conceder permissões vão falhar com o seguinte erro:
Access blocked: <Project Name> has not completed the Google verification process.