2024年11月鸿蒙OS系统中要怎么实现页面跳转?鸿蒙OS中实现页面跳转方法汇总!

发布时间:

  ⑴鸿蒙OS系统中要怎么实现页面跳转?鸿蒙系统作为一个开源的免费系统,目前已经开始内部测试使用了。而对于开发人员来说,想要了解鸿蒙的页面跳转方法,下面小编就为大家讲解一下吧!

  ⑵①不同 Slice 间跳转,同一个 Ability 中,优点是方便,高效,缺点是业务逻辑复杂度受限。

  ⑶button.setClickedListener(

  ⑷listener -> present(new SecondAbilitySlice(, new Intent(;

  ⑸②使用 Intent 借助于 ElementName,最常用的页面跳转方式,方便传递参数以及实现相对复杂的业务逻辑交互。

  ⑹ElementName elementName = new ElementName(……;

  ⑺intent.setElement(elementName;

  ⑻intent.setParam(……;

  ⑼startAbility(intent;

  ⑽③借助于 Operation,可实现跨应用页面跳转。

  ⑾Intent intent = new Intent(;

  ⑿Operation operation = new Intent.OperationBuilder(

  ⒀.withDeviceId(“”

  ⒁.withBundleName(“.demoapp”

  ⒂.withAbilityName(“.demoapp.FooAbility”

  ⒃.build(; intent.setOperation(operation;

  ⒄startAbility(intent;

  ⒅④Rout 路由(JS,调用 router.push( 接口将 uri 指定的页面添加到路由栈中,即跳转到 uri 指定的页面。在调用 router 方法之前,需要导入 router 模块。

  ⒆调用 router.push( 路由到详情页:

  ⒇// index.js

  ⒈import router from ‘system.router’;

  ⒉export default {

  ⒊launch( {

  ⒋router.push ({

  ⒌uri: ‘pages/detail/detail’, }; },}

  ⒍调用 router.back( 回到首页:

  ⒎// detail.js

  ⒏import router from ‘system.router’;

  ⒐export default {

  ⒑launch( {

  ⒒router.back(; },}

  ⒓⑤通过迁移实现分布式设备间页面传递(有请求迁移和请求回迁两种操作。

  ⒔需实现 IAbilityContinuation 接口

  ⒕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.AESS_SERVICE:分布式数据传输的权限

  ⒛.huawei.hwddmp.servicebus.BIND_SERVICE:系统应用使用权限

  ①需要获取分布式设备 ID(workID

  ②核心服务类:IContinuationRegisterManager。

  ③服务类的常用 API 方法:

  ④getContinuationRegisterManager(;获取服务类的对象

  ⑤register(;注册服务

  ⑥showDeviceList(;获取设备列表

  ⑦unregister(;注销服务

  ⑧请求迁移关键步骤(假定设备 A 向设备 B 迁移

  ⑨需要迁移的 page 实现 IAbilityContinuation 接口

  ⑩复写 onStartContinuation( 方法,做迁移前的准备工作

  Ⅰ复写 onSaveData(方法,保存迁移数据

  Ⅱ在设备 B 上复写 onRestoreData( 方法,恢复迁移数据

  Ⅲ在设备 A 上复写 onpleteContinuation( 方法,做迁移后的收尾工作

  Ⅳ调用 continueAbility( 或 continueAbilityReversibly( 发起迁移

  Ⅴ请求回迁需在设备 A 上调用 reverseContinueAbility( 请求回迁

  Ⅵ以下关键步骤类似 。