初始化
HarmonyOS 原生 SDK 应先配置和初始化核心 SDK,再初始化 Bluetooth、LAN、MQTT 通信能力。
服务配置
import {
GizConfiguration,
GizProductInfo,
GizServerInfo,
} from '@gizwits/smart-sdk';
const serverInfo = new GizServerInfo('api.gizwits.com');
const product = new GizProductInfo('your-product-key', 'your-product-secret');
const configuration = new GizConfiguration(
'your-app-id',
'your-app-secret',
[product],
serverInfo
);GizServerInfo 配置 OpenAPI 地址;GizProductInfo 配置产品信息;GizConfiguration 汇总 App、产品和服务区域。服务地址和版本要求以机智云分配信息及 OHPM 页面为准。
查询产品配置
const configuredProduct = configuration.getProductWithProductKey('your-product-key');
if (configuredProduct === undefined) {
throw new Error('Product is not configured');
}初始化核心 SDK
import { GizSDKManager } from '@gizwits/smart-sdk';
GizSDKManager.initialize(configuration);可选的第二个参数为日志目录,应传入调用方已经持有的应用沙箱路径,例如 UIAbilityContext.filesDir。initSDK() 是兼容旧命名的等价入口。
调试日志
GizSDKManager.setDebug(true);
const debugEnabled: boolean = GizSDKManager.isDebug();正式发布前建议关闭调试日志。
初始化通信能力
import { GizBluetoothManager } from '@gizwits/smart-sdk-bluetooth';
import { GizLanManager } from '@gizwits/smart-sdk-lan';
import { GizMqttManager } from '@gizwits/smart-sdk-mqtt';
GizBluetoothManager.initialize();
GizLanManager.initialize();
GizMqttManager.initialize();MQTT 可以在用户登录前初始化,它会等待用户令牌和绑定设备列表就绪后自动连接。
检查初始化状态
const initialized: boolean = GizSDKManager.isInitialized();
const currentConfiguration = GizSDKManager.getConfiguration();
const userManager = GizSDKManager.getUserManager();未初始化时读取配置或用户管理器会抛出异常。
读取模块版本
const coreVersion: string = GizSDKManager.getVersion();
const bluetoothVersion: string = GizBluetoothManager.getVersion();
const lanVersion: string = GizLanManager.getVersion();
const mqttVersion: string = GizMqttManager.getVersion();⚠️
AppSecret 和 ProductSecret 不要写入 hilog、业务埋点或公开仓库。