跨设备调用
HarmonyOS跨设备调用详解:分布式调度、跨设备启动Ability。
1. 设备发现
import deviceManager from '@ohos.distributedDeviceManager';
const dmInstance = deviceManager.createDeviceManager('com.example.app');
// 发现设备
dmInstance.on('deviceFound', (device) => {
console.log('Found device:', device.deviceName, device.deviceId);
});
dmInstance.startDiscovering();
2. 跨设备启动 Ability
import Want from '@ohos.app.ability.Want';
const want: Want = {
deviceId: targetDeviceId, // 目标设备 ID
bundleName: 'com.example.app',
abilityName: 'RemoteAbility',
};
this.context.startAbility(want);
3. 分布式任务迁移
// 迁移到目标设备
this.context.continueAbility('com.example.app', targetDeviceId)
// 接收迁移数据
onContinue(wantParam) {
return { data: this.currentState }
}
// 恢复迁移数据
onRestoreData(wantParam) {
this.currentState = wantParam.data
}