你好,目前我在HomeKit上工作,我想使用HomeKit实现一个功能。
我的要求是不使用二维码,我想添加配件。因为每个配件都有自己的网址,例如与二维码相关的X-HM://XXXXXXXXX,即HMAccessoryPayLoad。
我可以看到非常相似的问题没有得到回答
How to Add and Set up accessory using HMAccessoryPayLoad
Open HomeKits X-HM:// URL sheme
因此,根据文档,我尝试使用以下代码添加附件。我希望使用这个代码,我们可以直接添加配件,而不是打开默认的HomeKit摄像头视图。
if #available(iOS 11.3, *) {
let payload = HMAccessorySetupPayload.init(url: URL.init(string: "X-HM://XXXXXXXXXX")!)
home!.addAndSetupAccessories(with: payload!) { (accessories, error) in
if let error = error {
print("Error from addAndSetupAccessories:",error)
} else {
print("The accessory is added.")
}
}
} else {
// Fallback on earlier versions
}运行此代码后,它既没有给出错误,也没有给出成功。我试着检查控制台,但它是空的。
您可以帮助我添加附件使用有效载荷&不使用代码或打开默认的相机视图。
发布于 2020-10-02 22:21:19
我从Apple Support那里得到了答案,因为基本上我也处于同样的情况。
基本上,如果您不添加值为True的授权"com.apple.developer.homekit.allow-setup-payload“,此接口将不起作用。
我知道,没有关于这方面的文档,但这就是它。
此外,重点是目前我不知道如何将此授权添加到配置配置文件中。我已经请求了苹果的支持,我会更新这个线程Xamarin iOS - HomeKit integration尽快我有了答案。
您可以看到这是正确的方法,因为如果您在模拟器上尝试它,它将会工作。关键是,要在真实设备上使用它,我们需要配置配置文件中的授权。
发布于 2021-08-11 10:24:17
我不确定这是否仍然与任何人相关,但为了解决这个问题,您必须将此功能添加到您的apple developer帐户上的配置文件中,并在证书、标识符和配置文件中选择您的标识符,然后转到Additional capability选项卡,您将在那里找到HomeKit AllowSetupPayload。
我不确定为什么这没有包含在正常的HomeKit中,但这就是为我修复它的原因。
https://stackoverflow.com/questions/62470261
复制相似问题