Initialization
Configure and initialize the HarmonyOS core SDK before initializing Bluetooth, LAN, and MQTT capabilities.
Service configuration
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 configures the OpenAPI host, GizProductInfo configures a product, and GizConfiguration combines app, product, and region information. Refer to the assigned Gizwits service and OHPM for current requirements.
Query a product configuration
const configuredProduct = configuration.getProductWithProductKey('your-product-key');
if (configuredProduct === undefined) {
throw new Error('Product is not configured');
}Initialize the core SDK
import { GizSDKManager } from '@gizwits/smart-sdk';
GizSDKManager.initialize(configuration);The optional second parameter is an app-owned sandbox log directory, such as UIAbilityContext.filesDir. initSDK() is the equivalent compatibility name.
Debug logging
GizSDKManager.setDebug(true);
const debugEnabled: boolean = GizSDKManager.isDebug();Disable debug logging for production releases.
Initialize transport capabilities
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 can be initialized before login. It waits for a user token and bound-device list before connecting automatically.
Check initialization state
const initialized: boolean = GizSDKManager.isInitialized();
const currentConfiguration = GizSDKManager.getConfiguration();
const userManager = GizSDKManager.getUserManager();Reading configuration or the user manager before initialization throws.
Read module versions
const coreVersion: string = GizSDKManager.getVersion();
const bluetoothVersion: string = GizBluetoothManager.getVersion();
const lanVersion: string = GizLanManager.getVersion();
const mqttVersion: string = GizMqttManager.getVersion();Never write AppSecret or ProductSecret to hilog, analytics, or a public repository.