更新时间:2023-06-05 02:49:56下载pdf
智能生活 App SDK 提供了把智能设备配置上路由器或网关的能力。以常见的 Wi-Fi 快连为例,SDK 从云端获取配网 Token,再经由 App 来广播配网信息(路由 ID、密码、配网 Token)。智能设备接收到后,开始快速激活,同时连接到 App 和云端,开启设备上云的第一步。
开发设备配网功能之前,请先了解智能生活 App SDK 基本逻辑,并已经使用智能生活 App SDK 完成登录创建家庭等基本操作。
设备配网支撑的具体能力包括:
Wi-Fi 设备配网
有线设备配网
子设备配网
扫设备二维码配网
摄像头二维码配网
摄像头二维码配网,即智能摄像机特有的二维码配网模式,请参考 二维码配网。
闪电搜索和配网
HomeKit设备配网
NB-IoT 设备配网
蓝牙设备配网
蓝牙设备配网的详情,请参考 涂鸦蓝牙体系。
本文介绍设备配网过程中涉及到的部分名词,有关更多名词的说明,请参考 名词解释。
名词 | 说明 |
---|---|
Wi-Fi 设备 | 采用涂鸦 Wi-Fi 模组连接路由器,和 App 以及云端进行数据交互的智能设备。 |
Wi-Fi 快连配网 | 又称快连模式。大致流程如下:
|
热点配网 | 又称热点模式,手机作为 STA(STAtion)连接智能设备的热点,双方建立一个 Socket 连接,通过约定端口交互数据。 |
摄像头扫码配网 | 摄像头设备通过扫描 App 上的二维码,来获取配网数据信息。 |
有线设备 | 通过有线网络连接路由器的设备,例如 Zigbee 有线网关、有线摄像头等。 |
子设备 | 通过网关来跟 App 以及云端数据交互的设备,例如 Zigbee 子设备。 |
Zigbee | Zigbee 技术是一种近距离、低复杂度、低功耗、低速率、低成本的双向无线通讯技术。 主要用于距离短、功耗低且传输速率不高的各种电子设备之间进行数据传输,以及典型的有周期性数据、间歇性数据和低反应时间数据传输的应用。 |
Zigbee 网关 | 融合 Zigbee 网络中协调器和 Wi-Fi 功能的设备,负责 Zigbee 网络的组建及数据信息存储。 |
Zigbee 子设备 | Zigbee 网络中的路由或者终端设备,负责数据转发或者终端控制响应。 |
类名 | 说明 | 场景 |
---|---|---|
ThingSmartActivator | 提供快连模式、热点模式、有线设备激活、子设备激活等配网能力 | 需要在主线程中调用该类 |
从 iOS 14 版本开始,在设备配网、局域网本地控制时会触发 本地网络 权限弹窗。
目前苹果没有提供任何 API 对此权限进行判断,建议您在相关功能无法正常使用时提示、引导用户检查 系统设置 中的 app设置,确认是否开启了 本地网络 权限。
从 iOS 13 版本开始,如果用户没有开启地理位置权限,在已开启 Wi-Fi 权限的前提下,[ThingSmartActivator currentWifiSSID]
将获取不到有效的 Wi-Fi SSID 或 BSSID。在此情况下,iOS 会返回下列默认值:
建议您在 Wi-Fi 功能无法正常使用时,进行以下排查:
接口说明
/// Get the SSID of the current Wi-Fi asynchronously.
/// @see ThingSmartActivator::currentWifiSSID
/// @param success Called when the task finishes successfully. ThingSuccessString will be returned.
/// @param failure Called when the task is interrupted by an error.
+ (void)getSSID:(ThingSuccessString)success
failure:(ThingFailureError)failure;
示例代码
Objective-C:
[ThingSmartActivator getSSID:^(NSString *result) {
} failure:^(NSError *error) {
}];
Swift:
ThingSmartActivator.getSSID { (_: String?) in
} failure: { (Error) in
}
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈