鸿蒙系统实现页面跳转方法汇总!

①不同 Slice 间跳转,同一个 Ability 中,优点是方便,高效,缺点是业务逻辑复杂度受限。
button.setClickedListener(
????listener?->?present(new?SecondAbilitySlice(),?new?Intent())
);
②使用 Intent 借助于 ElementName,最常用的页面跳转方式,方便传递参数以及实现相对复杂的业务逻辑交互。
ElementName?elementName?=?new?ElementName(……);
intent.setElement(elementName);
intent.setParam(……);
startAbility(intent);
Intent?intent?=?new?Intent();
Operation?operation?=?new?Intent.OperationBuilder()
????????.withDeviceId("")
????????.withBundleName("com.demoapp")
????????.withAbilityName("com.demoapp.FooAbility")
????????.build();
?intent.setOperation(operation);
startAbility(intent);
调用 router.push() 路由到详情页:
//?index.js
import?router?from?'@system.router';
export?default?{
??launch()?{
????router.push?({
??????uri:?'pages/detail/detail',
????});
??},
}
//?detail.js
import?router?from?'@system.router';
export?default?{
??launch()?{
????router.back();
??},
}
2)需要权限:
ohos.permission.GET_DISTRIBUTED_DEVICE_INFO:用于允许获取分布式组网内的设备列表和设备信息
ohos.permission.DISTRIBUTED_DATASYNC:用于允许不同设备间的数据交换
ohos.permission.DISTRIBUTED_DEVICE_STATE_CHANGE:用于允许监听分布式组网内的设备状态变化
ohos.permission.READ_USER_STORAGE:读取存储卡中的内容
ohos.permission.WRITE_USER_STORAGE:修改或删除存储卡中的内容
ohos.permission.GET_BUNDLE_INFO:用于查询其他应用的信息
ohos.permission.servicebus.ACCESS_SERVICE:分布式数据传输的权限
com.huawei.hwddmp.servicebus.BIND_SERVICE:系统应用使用权限
核心服务类:IContinuationRegisterManager。
服务类的常用 API 方法:
getContinuationRegisterManager();获取服务类的对象
register();注册服务
showDeviceList();获取设备列表
unregister();注销服务
4)请求迁移关键步骤(假定设备 A 向设备 B 迁移)
如下:
需要迁移的 page 实现 IAbilityContinuation 接口
复写 onStartContinuation() 方法,做迁移前的准备工作
复写 onSaveData()方法,保存迁移数据
在设备 B 上复写 onRestoreData() 方法,恢复迁移数据
在设备 A 上复写 onCompleteContinuation() 方法,做迁移后的收尾工作
调用 continueAbility() 或 continueAbilityReversibly() 发起迁移
5)请求回迁需在设备 A 上调用 reverseContinueAbility() 请求回迁
以下关键步骤类似 4)。
关注公众号:拾黑(shiheibook)了解更多 [广告]赞助链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/
关注网络尖刀微信公众号随时掌握互联网精彩
- 1 习近平将发表二〇二六年新年贺词 7904141
- 2 2026年国补政策来了 7808738
- 3 东部战区:开火!开火!全部命中! 7712893
- 4 2026年这些民生政策将惠及百姓 7616985
- 5 小学食堂米线过期2.5小时被罚5万 7519709
- 6 解放军喊话驱离台军 原声曝光 7428214
- 7 为博流量直播踩烈士陵墓?绝不姑息 7327605
- 8 每月最高800元!多地发放养老消费券 7238391
- 9 数字人民币升级 1月1日起将计付利息 7141831
- 10 2026年1月1日起 一批新规将施行 7040675








51CTO技术栈
