App de exemplo
Se você tiver problemas ao usar as APIs Home, colete registros para depuração. Para coletar registros do dispositivo móvel, é necessário usar o Xcode. Se 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 em todas as etapas que envolvem o Xcode.
Os registros do app 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 do aplicativo e do SDK do 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.
Como coletar registros de extensão do Xcode
Se você encontrar problemas ao usar as APIs Home, colete registros para depuração.
No Xcode, acesse Debug na barra de menu superior e clique em Attach to Process by PID or Name.

Em PID ou Nome do processo, selecione MatterExtension e clique em Anexar.

Você vai ver Aguardando para anexar ao MatterAddDeviceExtension no iPhone se clicar no canto superior direito.

Clique na guia e selecione MatterAddExtension.

O console vai registrar o registro da extensão.
Sherlog: rastreamento de eventos entre pilhas
O Sherlog é um serviço de rastreamento em tempo real que fornece uma visão completa das interações entre a infraestrutura do Google e os serviços de nuvem do parceiro.
Pré-requisito: o rastreamento exige o uso de uma conta compartilhada e coordenada pelo Google (por exemplo, uma conta de demonstração ou registrada no GReg).
Objetivo principal: depurar defeitos funcionais e problemas de integração de nuvem para nuvem (C2C), como falhas na vinculação de contas ou estados incorretos do dispositivo, sem precisar mudar o código de produção.
Recursos: fornece gráficos completos de chamadas RPC, payloads de solicitação/resposta e metadados para intents SYNC, EXECUTE, QUERY e de vinculação de contas.
Registros do dispositivo hub do Fuchsia
É possível coletar registros dos seguintes hubs do Fuchsia usando este 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 seus dispositivos para o gerente técnico de contas (TAM) do Google. Eles estão escritos em letras pequenas na parte de baixo do dispositivo.
- Depois de entrar na lista de permissões, siga estas etapas para ativar o recurso:
- 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.
- Voltar para o menu de nível superior
- Toque em "Opções do desenvolvedor".
- Toque em "Registro de parceiros".
- O recurso vai ficar ativado por 24 horas. Depois disso, reative o recurso de geração de registros da etapa 5 em diante.
- No hub:
- Encontre 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 seu 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 os registros do hub, faça uma solicitação HTTP GET para o hub
usando um computador na mesma rede Wi-Fi.
- Anote 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 de 20 a 30 minutos de eventos passados.
- 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).
- Anote a porta e o caminho do endpoint:
Automações
Detecção de bordas
As automações no ecossistema do Google Home têm detecção de borda, que é uma lógica que verifica se uma ativação só ocorre quando há uma mudança real de estado, em vez de uma atualização de estado que apenas repete o estado anterior do dispositivo.
Por exemplo, se acender uma luz for uma ativação, a detecção de borda vai verificar se a ativação só ocorre quando o dispositivo de iluminação passa 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 conforme o esperado:
Verifique cada dispositivo para garantir que ele esteja funcionando corretamente, independente da automação.
Confira o gráfico da automação, comparando-o com a DSL da automação, para revelar possíveis suposições 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 de que 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, analise os critérios de ativação. Pode ser necessário adicionar mais 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ó, bem como as características que você está referenciando.
A criação da automação falha na validação
Se a criação da automação não passar na validação, uma mensagem de aviso ou mensagem de erro vai fornecer informações sobre o problema. Para mais informações, consulte a
referência de ValidationIssueType.
OAuth
Se você já tiver um cliente OAuth
Se você já tiver um cliente OAuth verificado para um app publicado, poderá usá-lo para testar as APIs Home.
O registro do Google Home Developer Console não é necessário para testar e usar as APIs Home. No entanto, você ainda vai precisar de um registro aprovado do 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 atual. Para saber como adicionar usuários de teste, consulte Gerar o ID do cliente OAuth. Independentemente da verificação do OAuth, há um limite imposto pelas APIs Home de 100 usuários que podem conceder permissões ao seu aplicativo. Essa limitação é suspensa após a conclusão do registro do Developer Console.
Developer Console registration 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 seu app com as APIs Home.
Para apps do Google Cloud que ainda estão com a verificação do OAuth pendente, 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.