01. 关于页面间的跳转
在HarmonyOS中,一个App允许存在多个Ability, 一个Ability中允许存在多个AbilitySlice;
因此在 App的应用中,存在同一个Ability中不同Slice之间的跳转,也存在不同Ability间的页面跳转;
a. 在一个Ability里,使用 present() / presentForResult() 方法从一个AbilitySlice导航到另外一个 AbilitySlice; 即同一个Page内,不同AbilitySlice之间的跳转;

b. 在不同Ability的AbilitySlice之间,使用 startAbility() / startAbilityForResult() 来启动一个新的 Ability;

02. 本次学习Demo源码
a. 实现同Ability内不同Slice间的跳转;
b. 实现不同Ability间的跳转;

03. 需注意的知识点
>>> 新建 Ability

>>> 在一个 Ability中新建新的 AbilitySlice

>>> 同Ability间,源Slice 接收 目标 Slice 返回数据的的处理
a. 源Slice 在调用 presentForResult时,传入一个 请求码 (requestCode); 请求码自定义;

b,源 Slice 配置结果接收监听

c. 目标Slice中配置返回结果

>>> 不同Ability间,源Slice 接收 目标 Slice 返回数据的的处理
不同Ability之间的跳转,需要使用 startAbilityForResult来处理;
a. 源Slice发起请求

b. 目标Slice或目标Ability中配置返回数据
* 从目标Ability 中配置返回结果

* 从目标Slice中返回结果

c. 源Slice中配置结果接收处理

>>> 从例程中可以看到,关于不同Page之间的跳转有二种不同的方式,
* 第一种方式,是直接配置跳转参数,

* 第二种方式,是通过指定的Action来跳转

要想实现第二种效果,需要注意如下几点:
1. 目标ABility,注册Action路由

2.目标ABility所属模块 config.json 中,为目标模块注册 Action

3.调用Slice,在业务中指定目标ABility中注册的Action;
Operation operation = new Intent.OperationBuilder().withAction(ACTION_NAME).build();
此时,可正常跳转到目标ABility;