redirection-rules.md 1.5 KB
Newer Older
Z
zengyawen 已提交
1 2 3 4 5 6 7 8 9
# 跳转规则


一般情况下,应用中的界面跳转由用户触发,应用本身通过startAbility启动跳转其他界面。


PageAbility作为可见Ability,可以通过startAbility启动有界面的且对外可见的Ability。


10
应用可通过在config.json中设置"abilities"中的"exported"属性设置Ability是否可由其他应用的组件启动,"exported"属性的具体参数和意义如下表所示。
Z
zengyawen 已提交
11 12


13
  **表1** exported属性说明
Z
zengyawen 已提交
14

15
| 属性名称 | 描述 | 是否可缺省 |
Z
zengyawen 已提交
16
| -------- | -------- | -------- |
17
| exported | 表示Ability是否可以被其他应用调用。<br/>true:该Ability可以被任何应用调用。<br/>false:该Ability只能被同一应用的其他组件调用。 | 可缺省,缺省时默认属性值为"false"。 |
Z
zengyawen 已提交
18 19 20 21 22


如果需设置当前Ability可由任何应用访问,对应config.json文件的示例代码如下所示:


23

Z
zengyawen 已提交
24 25 26 27 28 29
```ts
{
  "module": {
    // ...
    "abilities": [
      {
30
        "exported": "true",
Z
zengyawen 已提交
31 32 33 34 35 36 37 38
        // ...
      }
    ]
  }
}
```


39
如果应用中的Ability包含skills过滤器,建议此属性设置为"true",以允许其他应用通过[隐式调用](explicit-implicit-want-mappings.md#隐式want匹配原理详解)启动该Ability。如果此属性设为"false",其他应用尝试启动该Ability时系统会返回PERMISSION_DENIED。这种情况下系统应用可以通过申请[START_INVISIBLE_ABILITY](../security/permission-list.md)权限启动exported为false的组件,例如系统桌面、语音助手、搜索助手等。