Xamarin iOS - integração HomeKit

Sep 17 2020

Estou trabalhando em um aplicativo usando Xamarin.iOS. Eu preciso adicionar a possibilidade de adicionar um acessório ao HomeKit usando o endereço vindo de uma API interna (basicamente eu recupero o endereço do dispositivo usando uma solicitação da web). Depois de obter este código de configuração do acessório, tento usar a seguinte API do HomeKit

https://docs.microsoft.com/en-us/dotnet/api/homekit.hmhome.addandsetupaccessories?view=xamarin-ios-sdk-12#HomeKit_HMHome_AddAndSetupAccessories_HomeKit_HMAccessorySetupPayload_System_Action_HomeKit_HMAccessory___Foundation_NSError__

em particular a API com a seguinte assinatura AddAndSetupAccessories (HMAccessorySetupPayload, Action <HMAccessory [], NSError>), mas a Action que deve ser chamada na conclusão nunca é chamada.

O único resultado que obtenho é que meu aplicativo tenta entrar em segundo plano, mas permanece travado e inutilizável.

A única dica que recebo do registro do dispositivo é esta:

O aplicativo HomeUIService Host não tem direito a 'com.apple.homekit.private-spi-access' ou 'com.apple.developer.homekit.allow-setup-payload' - não é permitido adicionar a partir do URL!

mas eu tenho o direito para Homekit adicionado ao meu aplicativo. Não consigo encontrar nenhuma documentação sobre os direitos especificados na mensagem de log.

Alguém já experimentou algo assim?

Obrigado galera

Respostas

4 axlcoder Sep 24 2020 at 20:04

Eu tive a resposta do Suporte da Apple, então eu respondo minha pergunta apenas para alguém no futuro ou para mim mesmo no passado (spoiler da série Dark :).

Basicamente, esta API não funcionará se você não adicionar o Entitlement "com.apple.developer.homekit.allow-setup-payload" com valor igual a True.

Eu sei, não há documentação a respeito disso, mas é isso.

Saúde Gente