iOS SDK
事件监听

事件监听

GizSdkEventHandlerDelegate 的四个方法都需要实现。先设置 delegate,再初始化 SDK,避免遗漏初始化期间的事件。

import GizwitsiOSSDK
 
final class SDKModel: GizSdkEventHandlerDelegate {
    func start(config: GizConfigStruct) {
        GizSDKManager.sharedInstance.setDelegate(delegate: self)
        GizSDKManager.sharedInstance.initSDK(config: config)
    }
 
    func onDeviceListUpdate(devices: [GizDevice]) {
        // Update the device list.
    }
 
    func onDeviceData(device: GizDevice, result: GizJSON, type: GizCapability) {
        // Handle device data.
    }
 
    func onDeviceState(device: GizDevice, state: GizWifiDeviceNetStatus,
                       isLogin: Bool, type: GizCapability) {
        // Handle connectivity and authentication state.
    }
 
    func onDeviceBindState(did: String, isBind: Bool) {
        // Handle cloud binding changes.
    }
}

设备列表也可通过 await GizSDKManager.sharedInstance.getDevices() 主动获取,返回 [GizDevice],不是 GizResult。更新 UI 时切换到主线程。