问题标签 [hmaccessory]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2417 浏览

ios - HomeKit:“添加附件时出错,操作无法完成”和“添加附件时出错,操作无法完成”

编辑:我收到以下错误代码:

添加附件时出错 操作无法完成。(HMErrorDomain 错误 2。)

和:

添加配件时出错无法开始与配件配对 [name = xxxxx, providedName = xxxxx, uuid = xxxxx-xxxxx-xxxxx-xxxxx-xxxxx, identifier = xxxxx, configuration-app-id = (null), home = (null) , 桥 = (null) ]

两者都是数字 2。

不明白为什么在 HMatalog 应用程序上可以正常工作。我的代码有什么问题?它在附件模拟器上运行良好,但在真正的附件上却不行(真正的附件只能通过 HMatalog 应用程序添加,而不是我的自定义应用程序)。


实际行为:

  • 从我的应用程序添加附件(第一次工作)
  • 重置附件,然后重新添加它(不起作用并在下面的屏幕截图中给出配对错误)。但是,如果我使用 Apple 示例HMDatalog ,它确实会给出这些错误,但它确实有效。

在此处输入图像描述

而有时:

在此处输入图像描述

预期成绩:

  • 从我的应用程序中添加配件也没有配对错误

这是我的添加附件代码

0 投票
2 回答
697 浏览

ios - 重新配对 HomeKit 配件

HomeKit 配件模拟器中有一个取消配对按钮。当您取消配对某个配件时,该配件似乎保留在您之前分配的家中的 HomeKit 数据库中。我想添加一个从数据库中删除附件或重新配对附件的过程。

  1. 配件未配对时是否调用任何委托方法?

  2. 有没有办法测试以前发现的配件当前是否配对?我正在寻找与配对特别相关的东西 - 该isReachable属性太通用了。

  3. 有没有办法修复配件?在家里调用该addAccessory方法后,我收到一个错误,因为配件已经在家里 - 只是没有与设备配对。

0 投票
3 回答
389 浏览

ios9 - 如何比较 HMAccessory 的实例

自 iOS9 以来,该identifier属性HMAccessory已贬值。还有另一种方法来比较 HMAccessory 的两个不同实例吗?

0 投票
0 回答
2467 浏览

ios - 打开 HomeKits X-HM:// URL sheme

我正在使用 HomeKit SDK 创建一个应用程序,我想以编程方式添加一个未经认证的配件。我的目标是构建一个用户友好且方便的配对过程,而无需打印 QR 码或 NFC 就绪配件。我想以编程方式提交配对引脚/配对 URL,因此用户无需担心任何代码。

我已经设置了 HMAccessoryBrowser,它可以快速可靠地找到附件。到目前为止,我已经有了 HMAccessory 对象以及有效的配对链接(例如:),X-HM://123456789ABC并且我尝试了三种方法来添加附件:

  1. 使用 Url 生成二维码,并使用原生相机或家庭应用程序进行扫描,效果非常好。- 问题:您需要第二台设备/打印二维码以扫描二维码。
  2. 使用HMHome的addAccessory功能直接添加HMAccessory。- 问题:在接受要求添加设备的提示后,家庭应用程序打开并要求扫描二维码或手动选择设备并输入代码。这对我来说没有意义,除非我刚刚告诉 HomeKit 它应该添加哪个配件,但它也在使用 HomeKit 配件模拟器的配件做这种行为,并且在这篇文章中也提到过。
  3. 使用 .打开 X-HM URL UIApplication.open()。- 问题:同样具有 HomeKit 权限,函数失败并显示错误消息:

-canOpenURL:URL 失败:“X-HM://123456789ABC” - 错误:“操作无法完成。(OSStatus 错误 -10814。)”

在授予对 myHome Data的访问权限之前,错误消息类似于,您无权打开此 url。

在我看来,直接打开配对 URL 似乎是最好的解决方案,除非它对用户来说是相同的过程,就像添加任何其他 HomeKit 设备而无需扫描 QR 码一样,但我的想法已经不多了。

我将不胜感激任何想法、解决方法或其他过程,以使这件事配对,在此先感谢!

0 投票
2 回答
660 浏览

ios - 如何使用 HMAccessoryPayLoad 添加 HomeKit 配件?

您好,目前我正在开发 HomeKit,我想使用 HomeKit 实现一项功能。

我的要求是不使用要添加附件的 QR 码。由于每个配件都有自己的 URL,例如X-HM://XXXXXXXXX与 QR 码相关联,即HMAccessoryPayLoad.

我可以看到非常相似的未回答的问题

如何使用 HMAccessoryPayLoad 添加和设置附件

打开 HomeKits X-HM:// URL sheme

因此,根据文档,我尝试使用以下代码添加附件。我希望使用此代码我们可以直接添加配件,而无需打开默认的 HomeKit 摄像头视图。

运行此代码后,它没有给出错误或成功。我尝试检查控制台,但它是空的。

您能帮我使用有效负载添加附件吗?无需使用代码或打开默认相机视图。