Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
89ab8248
D
Docs
项目概览
OpenHarmony
/
Docs
大约 2 年 前同步成功
通知
161
Star
293
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
89ab8248
编写于
4月 13, 2023
作者:
O
openharmony_ci
提交者:
Gitee
4月 13, 2023
浏览文件
操作
浏览文件
下载
差异文件
!17103 1、TS文件修改为TypeScript文件。 2、补充应用进程和线程的命令查看方式。 3、在使用定时定点刷新功能之前,增加一个使能开关的说明。
Merge pull request !17103 from zyjhandsome/master
上级
1d69eb1c
90f80ca5
变更
5
显示空白变更内容
内联
并排
Showing
5 changed file
with
61 addition
and
57 deletion
+61
-57
zh-cn/application-dev/application-models/abilitystage.md
zh-cn/application-dev/application-models/abilitystage.md
+19
-21
zh-cn/application-dev/application-models/arkts-ui-widget-update-by-time.md
...-dev/application-models/arkts-ui-widget-update-by-time.md
+18
-11
zh-cn/application-dev/application-models/process-model-stage.md
...application-dev/application-models/process-model-stage.md
+2
-1
zh-cn/application-dev/application-models/thread-model-stage.md
.../application-dev/application-models/thread-model-stage.md
+12
-14
zh-cn/application-dev/quick-start/module-configuration-file.md
.../application-dev/quick-start/module-configuration-file.md
+10
-10
未找到文件。
zh-cn/application-dev/application-models/abilitystage.md
浏览文件 @
89ab8248
...
...
@@ -12,9 +12,9 @@ DevEco Studio默认工程中未自动生成AbilityStage,如需要使用Ability
1.
在工程Module对应的ets目录下,右键选择“New
>
Directory”,新建一个目录并命名为myabilitystage。
2.
在myabilitystage目录,右键选择“New
>
ts File”,新建一个TS
文件并命名为MyAbilityStage.ts。
2.
在myabilitystage目录,右键选择“New
>
TypeScript File”,新建一个TypeScript
文件并命名为MyAbilityStage.ts。
3.
打开MyAbilityStage.ts文件,导入AbilityStage的依赖包,自定义类继承AbilityStage并加上需要的生命周期回调,示例中增加了一个
onCreate()
生命周期回调。
3.
打开MyAbilityStage.ts文件,导入AbilityStage的依赖包,自定义类继承AbilityStage并加上需要的生命周期回调,示例中增加了一个
`onCreate()`
生命周期回调。
```
ts
import
AbilityStage
from
'
@ohos.app.ability.AbilityStage
'
;
...
...
@@ -30,7 +30,7 @@ DevEco Studio默认工程中未自动生成AbilityStage,如需要使用Ability
}
```
4.
在
[
module.json5配置文件
](
../quick-start/module-configuration-file.md
)
中
`srcEntry`
参数中配置Module所对应的代码路径
。
4.
在
[
module.json5配置文件
](
../quick-start/module-configuration-file.md
)
中
,通过配置
`srcEntry`
参数来指定模块对应的代码路径,以作为HAP加载的入口
。
```
json
{
"module"
:
{
...
...
@@ -42,20 +42,18 @@ DevEco Studio默认工程中未自动生成AbilityStage,如需要使用Ability
}
```
[
AbilityStage
](
../reference/apis/js-apis-app-ability-abilityStage.md
)
拥有
[
`onCreate()`
](
../reference/apis/js-apis-app-ability-abilityStage.md#abilitystageoncreate
)
生命周期回调和
[
`onAcceptWant()`
](
../reference/apis/js-apis-app-ability-abilityStage.md#abilitystageonacceptwant
)
、
[
`onConfigurationUpdated()`
](
../reference/apis/js-apis-app-ability-abilityStage.md#abilitystageonconfigurationupdate
)
、
[
`onMemoryLevel()`
](
../reference/apis/js-apis-app-ability-abilityStage.md#abilitystageonmemorylevel
)
事件回调。
[
AbilityStage
](
../reference/apis/js-apis-app-ability-abilityStage.md
)
拥有
[
onCreate()
](
../reference/apis/js-apis-app-ability-abilityStage.md#abilitystageoncreate
)
生命周期回调和
[
onAcceptWant()
](
../reference/apis/js-apis-app-ability-abilityStage.md#abilitystageonacceptwant
)
、
[
onConfigurationUpdated()
](
../reference/apis/js-apis-app-ability-abilityStage.md#abilitystageonconfigurationupdate
)
、
[
onMemoryLevel()
](
../reference/apis/js-apis-app-ability-abilityStage.md#abilitystageonmemorylevel
)
事件回调。
-
[
`onCreate()`
](
../reference/apis/js-apis-app-ability-abilityStage.md#abilitystageoncreate
)
生命周期回调:在开始加载对应Module的第一个UIAbility实例之前会先创建AbilityStage,并在AbilityStage创建完成之后执行其
`onCreate()`
生命周期回调。AbilityStage模块提供在Module加载的时候,通知开发者,可以在此进行该Module的初始化(如资源预加载,线程创建等)能力。
-
[
onCreate()
](
../reference/apis/js-apis-app-ability-abilityStage.md#abilitystageoncreate
)
生命周期回调:在开始加载对应Module的第一个UIAbility实例之前会先创建AbilityStage,并在AbilityStage创建完成之后执行其onCreate()生命周期回调。AbilityStage模块提供在Module加载的时候,通知开发者,可以在此进行该Module的初始化(如资源预加载,线程创建等)能力
。
-
[
`onAcceptWant()`
](
../reference/apis/js-apis-app-ability-abilityStage.md#abilitystageonacceptwant
)
事件回调:UIAbility
[
指定实例模式(specified)
](
uiability-launch-type.md#specified启动模式
)
启动时候触发的事件回调,具体使用请参见
[
UIAbility启动模式综述
](
uiability-launch-type.md
)
。
-
[
onAcceptWant()
](
../reference/apis/js-apis-app-ability-abilityStage.md#abilitystageonacceptwant
)
事件回调:UIAbility
[
指定实例模式(specified)
](
uiability-launch-type.md#specified启动模式
)
启动时候触发的事件回调,具体使用请参见
[
UIAbility启动模式综述
](
uiability-launch-type.md
)
。
-
[
`onConfigurationUpdated()`
](
../reference/apis/js-apis-app-ability-abilityStage.md#abilitystageonconfigurationupdate
)
事件回调:当系统全局配置发生变更时触发的事件,系统语言、深浅色等,配置项目前均定义在
[
`Configuration`
](
../reference/apis/js-apis-app-ability-configuration.md
)
类中
。
-
[
onConfigurationUpdated()
](
../reference/apis/js-apis-app-ability-abilityStage.md#abilitystageonconfigurationupdate
)
事件回调:当系统全局配置发生变更时触发的事件,系统语言、深浅色等,配置项目前均定义在
[
Configuration
](
../reference/apis/js-apis-app-ability-configuration.md
)
类中
。
-
[
`onMemoryLevel()`
](
../reference/apis/js-apis-app-ability-abilityStage.md#abilitystageonmemorylevel
)
事件回调:当系统调整内存时触发的事件
。
-
[
onMemoryLevel()
](
../reference/apis/js-apis-app-ability-abilityStage.md#abilitystageonmemorylevel
)
事件回调:当系统调整内存时触发的事件。
应用被切换到后台时,系统会将在后台的应用保留在缓存中。即使应用处于缓存中,也会影响系统整体性能。当系统资源不足时,系统会通过多种方式从应用中回收内存,必要时会完全停止应用,从而释放内存用于执行关键任务。为了进一步保持系统内存的平衡,避免系统停止用户的应用进程,可以在AbilityStage中的onMemoryLevel()生命周期回调中订阅系统内存的变化情况,释放不必要的资源。
应用被切换到后台时,系统会将在后台的应用保留在缓存中。即使应用处于缓存中,也会影响系统整体性能。当系统资源不足时,系统会通过多种方式从应用中回收内存,必要时会完全停止应用,从而释放内存用于执行关键任务。为了进一步保持系统内存的平衡,避免系统停止用户的应用进程,可以在AbilityStage中的
`onMemoryLevel()`
生命周期回调中订阅系统内存的变化情况,释放不必要的资源。
```
ts
...
...
zh-cn/application-dev/application-models/arkts-ui-widget-update-by-time.md
浏览文件 @
89ab8248
# 定时刷新和定点刷新
在使用定时和定点刷新功能之前,需要在form_config.json配置文件中设置
`updateEnabled`
字段为
`true`
,以启用周期性刷新功能。
当前卡片框架提供了如下几种按时间刷新卡片的方式:
-
定时刷新:表示每隔一段时间刷新卡片内容,在form_config.json文件中配置,详见
[
updateDuration
](
arkts-ui-widget-configuration.md
)
字段。例如,每小时刷新一次卡片内容。注意:updateDuration(定时刷新)优先级比scheduledUpdateTime(定点刷新)高,配置定时刷新后,定点刷新将失效。
-
定时刷新:表示在一定时间间隔内自动刷新卡片内容。可以在form_config.json配置文件的
[
`updateDuration`
](
arkts-ui-widget-configuration.md
)
字段中进行设置。例如,可以将刷新时间设置为每小时一次。
> **说明:**
>
> 当配置了`updateDuration`(定时刷新)后,该设置会优先于`scheduledUpdateTime`(定点刷新)生效,即使同时配置了两者,定点刷新也会被忽略。
```
json
{
...
...
@@ -30,9 +35,11 @@
}
```
-
定点刷新:表示每天在某个时间点刷新,在form_config.json文件中配置,详见
[
scheduledUpdateTime
](
arkts-ui-widget-configuration.md
)
字段。例如,每天在10:30更新卡片内容。
>  **说明:**
> 当同时配置了定时刷新(updateDuration)和定点刷新(scheduledUpdateTime)时,定时刷新的优先级更高。如果想要配置定点刷新,则需要将updateDuration配置为0。
-
定点刷新:表示在每天的某个特定时间点自动刷新卡片内容。可以在form_config.json配置文件中的
[
`scheduledUpdateTime`
](
arkts-ui-widget-configuration.md
)
字段中进行设置。例如,可以将刷新时间设置为每天的上午10点30分。
> **说明:**
>
> 当同时配置了定时刷新(`updateDuration`)和定点刷新(`scheduledUpdateTime`)时,定时刷新的优先级更高。如果想要配置定点刷新,则需要将`updateDuration`配置为0。
```
json
...
...
@@ -59,7 +66,7 @@
}
```
-
下次刷新:
通过
[
setFormNextRefreshTime
](
../reference/apis/js-apis-app-form-formProvider.md#setformnextrefreshtime
)
接口指定卡片的下一次刷新时间(最短时间5分钟),例如,在接口调用的5分钟后
刷新卡片内容。
-
下次刷新:
表示指定卡片的下一次刷新时间。可以通过调用
[
`setFormNextRefreshTime()`
](
../reference/apis/js-apis-app-form-formProvider.md#setformnextrefreshtime
)
接口来实现。最短刷新时间为5分钟。例如,可以在接口调用后的5分钟内
刷新卡片内容。
```
ts
import
formProvider
from
'
@ohos.app.form.formProvider
'
;
...
...
@@ -81,12 +88,12 @@
```
在触发定时、定点或
主动刷新后,系统会调用FormExtensionAbility的
[
onUpdateForm
](
../reference/apis/js-apis-app-form-formExtensionAbility.md#onupdateform
)
生命周期回调,在回调中,可以使用
[
updateForm
](
../reference/apis/js-apis-app-form-formProvider.md#updateform
)
进行提供方刷新卡片。onUpdateForm生命周期回调参考
[
通过FormExtensionAbility刷新卡片内容
](
arkts-ui-widget-event-formextensionability.md
)
。
在触发定时、定点或
下次刷新后,系统会调用FormExtensionAbility的
[
`onUpdateForm()`
](
../reference/apis/js-apis-app-form-formExtensionAbility.md#onupdateform
)
生命周期回调,在回调中,可以使用
[
`updateForm()`
](
../reference/apis/js-apis-app-form-formProvider.md#updateform
)
进行提供方刷新卡片。
`onUpdateForm()`
生命周期回调的使用请参见
[
通过FormExtensionAbility刷新卡片内容
](
arkts-ui-widget-event-formextensionability.md
)
。
>  **说明:**
> 1. 定时刷新有配额限制,每张卡片每天最多通过定时方式触发刷新50次,定时刷新包含[卡片配置项updateDuration](arkts-ui-widget-configuration.md)和调用[
setFormNextRefreshTime](../reference/apis/js-apis-app-form-formProvider.md#setformnextrefreshtime)两种
,当达到50次配额后,无法通过定时方式再次触发刷新,刷新次数会在每天的0点重置。
> 1. 定时刷新有配额限制,每张卡片每天最多通过定时方式触发刷新50次,定时刷新包含[卡片配置项updateDuration](arkts-ui-widget-configuration.md)和调用[
`setFormNextRefreshTime()`](../reference/apis/js-apis-app-form-formProvider.md#setformnextrefreshtime)方法两种方式
,当达到50次配额后,无法通过定时方式再次触发刷新,刷新次数会在每天的0点重置。
>
> 2. 当前定时刷新使用同一个计时器进行计时,因此卡片定时刷新的第一次刷新会有最多30分钟的偏差。比如第一张卡片A
(每隔半小时刷新一次)在3点20分添加成功,定时器启动并每隔半小时触发一次事件,第二张卡片B(每隔半小时刷新一次)在3点40分添加成功,在3点50分定时器事件触发时,卡片A触发定时刷新,卡片B会在下次事件(4点20分)
中才会触发。
> 2. 当前定时刷新使用同一个计时器进行计时,因此卡片定时刷新的第一次刷新会有最多30分钟的偏差。比如第一张卡片A
(每隔半小时刷新一次)在3点20分添加成功,定时器启动并每隔半小时触发一次事件,第二张卡片B(每隔半小时刷新一次)在3点40分添加成功,在3点50分定时器事件触发时,卡片A触发定时刷新,卡片B会在下次事件(4点20分)
中才会触发。
>
> 3. 定时刷新和定点刷新仅在屏幕亮屏情况下才会触发,在灭屏场景下仅会将记录刷新动作,待亮屏时统一进行刷新。
zh-cn/application-dev/application-models/process-model-stage.md
浏览文件 @
89ab8248
...
...
@@ -15,7 +15,8 @@ OpenHarmony的进程模型如下图所示:
> 说明:
>
> 仅系统应用支持构建ServiceExtensionAbility和DataShareExtensionAbility。
> - 仅系统应用支持构建ServiceExtensionAbility和DataShareExtensionAbility。
> - 执行`hdc shell`命令,进入设备的shell命令行。在shell命令行中,执行`ps -ef`命令,可以查看所有正在运行的进程信息。
在上述模型基础上,对于系统应用可以通过申请多进程权限(如下图所示),为指定HAP配置一个自定义进程名,该HAP中的UIAbility、DataShareExtensionAbility、ServiceExtensionAbility就会运行在自定义进程中。不同的HAP可以通过配置不同的进程名运行在不同进程中。
...
...
zh-cn/application-dev/application-models/thread-model-stage.md
浏览文件 @
89ab8248
...
...
@@ -2,24 +2,22 @@
OpenHarmony应用中每个进程都会有一个主线程,主线程有如下职责:
1.
负责管理其他线程
在OpenHarmony应用中,每个进程都会有一个主线程,主线程具有以下职责:
2.
同应用多个UIAbility组件共用一个主线程
1.
管理其他线程,包括Worker线程。
3.
输入事件分发
4.
UI绘制
5.
应用代码回调(事件处理,生命周期)
6.
接收Worker发送的消息
除主线程外,还有一类与主线程并行的独立线程Worker,主要用于执行耗时操作,但不可以直接操作UI。Worker线程在主线程中创建,与主线程相互独立。最多可以创建7个Worker:
2.
与应用中多个UIAbility组件共用一个主线程。
3.
分发输入事件。
4.
执行UI绘制。
5.
处理应用代码的回调,包括事件处理和生命周期管理。
6.
接收Worker发送的消息。
除了主线程外,还有一类独立的Worker线程,用于执行耗时操作。Worker线程在主线程中创建,与主线程相互独立,但不能直接操作UI。最多可以创建7个Worker线程。

基于OpenHarmony的线程模型,不同的业务功能运行在不同的线程上,业务功能的交互就需要线程间通信。同一个进程内,线程间通信目前主要有Emitter和Worker两种方式,其中Emitter主要适用于线程间的事件同步, Worker主要用于新开一个线程执行耗时任务。
**说明:**
*
Stage模型只提供了主线程和Worker线程,Emitter主要用于主线程内或者主线程和Worker线程的事件同步。
\ No newline at end of file
> **说明:**
>
> - Stage模型只提供了主线程和Worker线程,Emitter主要用于主线程内或者主线程和Worker线程的事件同步。
> - 执行`hdc shell`命令,进入设备的shell命令行。在shell命令行中,执行`ps -p <pid> -T`命令,可以查看指定应用进程的线程信息。其中,`<pid>`为需要指定的应用进程的进程ID。
\ No newline at end of file
zh-cn/application-dev/quick-start/module-configuration-file.md
浏览文件 @
89ab8248
...
...
@@ -75,11 +75,11 @@ module.json5配置文件包含以下标签。
| type | 标识当前Module的类型。类型有4种,分别:
<br/>
-
entry:应用的主模块。
<br/>
-
feature:应用的动态特性模块。
<br/>
-
har:静态共享包模块。
<br/>
-
shared:动态共享包模块。 | 字符串 | 该标签不可缺省。 |
| srcEntry | 标识当前Module所对应的代码路径,标签值为字符串(最长为127字节)。 | 字符串 | 该标签可缺省,缺省值为空。 |
| description | 标识当前Module的描述信息,标签值是字符串类型(最长255字节)或对描述内容的字符串资源索引。 | 字符串 | 该标签可缺省,缺省值为空。 |
| process | 标识当前Module的进程名,标签值为字符串类型(最长为31个字节)。如果在HAP标签下配置了process,该应用的所有UIAbility、DataShareExtensionAbility、ServiceExtensionAbility都运行在该进程中。
<br/>
>
**说明:**
<br/>
>
仅支持系统应用配置,三方应用配置不生效。 | 字符串 | 可缺省,缺省为app.json5文件下app标签下的bundleName。 |
| process | 标识当前Module的进程名,标签值为字符串类型(最长为31个字节)。如果在HAP标签下配置了process,该应用的所有UIAbility、DataShareExtensionAbility、ServiceExtensionAbility都运行在该进程中。
<br/>
**说明:**
<br/>
仅支持系统应用配置,三方应用配置不生效。 | 字符串 | 可缺省,缺省为app.json5文件下app标签下的bundleName。 |
| mainElement | 标识当前Module的入口UIAbility名称或者ExtensionAbility名称。标签最大字节长度为255。 | 字符串 | 该标签可缺省,缺省值为空。 |
|
[
deviceTypes
](
#devicetypes标签
)
| 标识当前Module可以运行在哪类设备上,标签值采用字符串数组的表示。 | 字符串数组 | 该标签不可缺省,可以为空值。 |
| deliveryWithInstall | 标识当前Module是否在用户主动安装的时候安装,表示该Module对应的HAP是否跟随应用一起安装。
<br/>
-
true:主动安装时安装。
<br/>
-
false:主动安装时不安装。 | 布尔值 | 该标签不可缺省。 |
| installationFree | 标识当前Module是否支持免安装特性。
<br/>
-
true:表示支持免安装特性,且符合免安装约束。
<br/>
-
false:表示不支持免安装特性。
<br/>
>
**说明:**
<br/>
> 当应用的entry类型Module的该字段配置为true时,该应用的feature类型的该字段也需要配置为true。
<br/>
>
当应用的entry类型Module的该字段配置为false时,该应用的feature类型的该字段根据业务需求配置true或false。 | 布尔值 | 该标签不可缺省。 |
| installationFree | 标识当前Module是否支持免安装特性。
<br/>
-
true:表示支持免安装特性,且符合免安装约束。
<br/>
-
false:表示不支持免安装特性。
<br/>
**说明:**
<br/>
当应用的entry类型Module的该字段配置为true时,该应用的feature类型的该字段也需要配置为true。
<br/>
当应用的entry类型Module的该字段配置为false时,该应用的feature类型的该字段根据业务需求配置true或false。 | 布尔值 | 该标签不可缺省。 |
| virtualMachine | 标识当前Module运行的目标虚拟机类型,供云端分发使用,如应用市场和分发中心。
<br/>
该标签值为字符串。如果目标虚拟机类型为ArkTS引擎,则其值为“ark+版本号”。 | 字符串 | 该标签由IDE构建HAP的时候自动插入。 |
|
[
pages
](
#pages标签
)
| 标识当前Module的profile资源,用于列举每个页面信息。该标签最大长度为255个字节。 | 字符串 | 在有UIAbility的场景下,该标签不可缺省。 |
|
[
metadata
](
#metadata标签
)
| 标识当前Module的自定义元信息,标签值为数组类型,只对当前Module、UIAbility、ExtensionAbility生效。 | 对象数组 | 该标签可缺省,缺省值为空。 |
...
...
@@ -302,14 +302,14 @@ OpenHarmony系统对无图标应用严格管控。如果HAP中没有配置入口
| removeMissionAfterTerminate | 标识当前UIAbility组件销毁后是否从任务列表中移除任务,为布尔类型:
<br/>
-
true表示销毁后移除任务。
<br/>
-
false表示销毁后不移除任务。 | 布尔值 | 该标签可缺省,缺省值为false。 |
| orientation | 标识当前UIAbility组件启动时的方向。该方向的取值范围包括:
<br/>
-
unspecified:未指定方向,由系统自动判断显示方向。
<br/>
-
landscape:横屏。
<br/>
-
portrait:竖屏。
<br/>
-
landscape_inverted:反向横屏。
<br/>
-
portrait_inverted:反向竖屏。
<br/>
-
auto_rotation:随传感器旋转。
<br/>
-
auto_rotation_landscape:传感器横屏旋转,包括了横屏和反向横屏。
<br/>
-
auto_rotation_portrait:传感器竖屏旋转,包括了竖屏和反向竖屏。
<br/>
-
auto_rotation_restricted:传感器开关打开,方向可随传感器旋转。
<br/>
-
auto_rotation_landscape_restricted:传感器开关打开,方向可随传感器旋转为横屏,
包括了横屏和反向横屏。
<br/>
-
auto_rotation_portrait_restricted:传感器开关打开,方向随可传感器旋转为竖屏,
包括了横屏和反向横屏。
<br/>
-
locked:传感器开关关闭,方向锁定。 | 字符串 | 该标签可缺省,缺省值为unspecified。 |
| supportWindowMode | 标识当前UIAbility组件所支持的窗口模式,包含:
<br/>
-
fullscreen:全屏模式。
<br/>
-
split:分屏模式。
<br/>
-
floating:悬浮窗模式。 | 字符串数组 | 该标签可缺省,缺省值为
<br/>
["fullscreen",
"split",
"floating"]。 |
| priority | 标识当前UIAbility组件的优先级。
[
隐式查询
](
../application-models/explicit-implicit-want-mappings.md
)
时,优先级越高,UIAbility在返回列表越靠前。该标签取值为integer类型,取值范围0-10。数值越大,优先级越高。
<br/>
>
**说明:**
<br/>
>
仅支持系统应用配置,三方应用配置不生效。 | 数值 | 该标签可缺省,缺省值为0。 |
| priority | 标识当前UIAbility组件的优先级。
[
隐式查询
](
../application-models/explicit-implicit-want-mappings.md
)
时,优先级越高,UIAbility在返回列表越靠前。该标签取值为integer类型,取值范围0-10。数值越大,优先级越高。
<br/>
**说明:**
<br/>
仅支持系统应用配置,三方应用配置不生效。 | 数值 | 该标签可缺省,缺省值为0。 |
| maxWindowRatio | 标识当前UIAbility组件支持的最大的宽高比。该标签最小取值为0。 | 数值 | 该标签可缺省,缺省值为平台支持的最大的宽高比。 |
| minWindowRatio | 标识当前UIAbility组件支持的最小的宽高比。该标签最小取值为0。 | 数值 | 该标签可缺省,缺省值为平台支持的最小的宽高比。 |
| maxWindowWidth | 标识当前UIAbility组件支持的最大的窗口宽度,宽度单位为vp。该标签最小取值为0,但不能小于minWindowWidth;最大取值不能超过平台支持的最大窗口宽度。窗口尺寸可以参考:
[
约束与限制
](
../windowmanager/window-overview.md#约束与限制
)
。 | 数值 | 该标签可缺省,缺省值为平台支持的最大的窗口宽度。 |
| minWindowWidth | 标识当前UIAbility组件支持的最小的窗口宽度,
宽度单位为vp。该标签最小取值为0,但不能小于平台支持的最小窗口宽度;最大取值不能大于maxWindowWidth。窗口尺寸可以参考:
[
约束与限制
](
../windowmanager/window-overview.md#约束与限制
)
。 | 数值 | 该标签可缺省,缺省值为平台支持的最小的窗口宽度。 |
| maxWindowHeight | 标识当前UIAbility组件支持的最大的窗口高度,
高度单位为vp。该标签最小取值为0,但不能小于minWindowHeight;最大取值不能超过平台支持的最大窗口高度。 窗口尺寸可以参考:
[
约束与限制
](
../windowmanager/window-overview.md#约束与限制
)
。| 数值 | 该标签可缺省,缺省值为平台支持的最大的窗口高度。 |
| minWindowHeight | 标识当前UIAbility组件支持的最小的窗口高度,
高度单位为vp。该标签最小取值为0,但不能小于平台支持的最小窗口高度;最大取值不能大于maxWindowHeight。窗口尺寸可以参考:
[
约束与限制
](
../windowmanager/window-overview.md#约束与限制
)
。| 数值 | 该标签可缺省,缺省值为平台支持的最小的窗口高度。 |
| excludeFromMissions | 标识当前UIAbility组件是否在最近任务列表中显示。
<br/>
-
true:表示不在任务列表中显示。
<br/>
-
false:表示在任务列表中显示。
<br/>
>
**说明:**
<br/>
>
仅支持系统应用配置,三方应用配置不生效。 | 布尔值 | 该标签可缺省,缺省值为false。 |
| excludeFromMissions | 标识当前UIAbility组件是否在最近任务列表中显示。
<br/>
-
true:表示不在任务列表中显示。
<br/>
-
false:表示在任务列表中显示。
<br/>
**说明:**
<br/>
仅支持系统应用配置,三方应用配置不生效。 | 布尔值 | 该标签可缺省,缺省值为false。 |
| recoverable | 标识当前是否支持在检测到应用故障后,恢复到应用原界面。
<br/>
-
true:支持检测到出现故障后,恢复到原界面。
<br/>
-
false:不支持检测到出现故障后,恢复到原界面。 | 布尔值 | 该标签可缺省,缺省值为false。 |
abilities示例:
...
...
@@ -426,11 +426,11 @@ skills示例:
| srcEntry | 标识当前ExtensionAbility组件所对应的代码路径,标签值最大长度为127字节。 | 字符串 | 该标签不可缺省。 |
| description | 标识当前ExtensionAbility组件的描述,标签值最大长度为255字节,标签也可以是描述内容的资源索引,用于支持多语言。 | 字符串 | 该标签可缺省,缺省值为空。 |
| icon | 标识当前ExtensionAbility组件的图标,标签值为资源文件的索引。如果ExtensionAbility组件被配置为MainElement,该标签必须配置。 | 字符串 | 该标签可缺省,缺省值为空。 |
| label | 标识当前ExtensionAbility组件对用户显示的名称,标签值配置为该名称的资源索引以支持多语言。
<br/>
>
**说明:**
<br/>
>
如果ExtensionAbility被配置当前Module的mainElement时,该标签必须配置,且应用内唯一。 | 字符串 | 该标签不可缺省。 |
| type | 标识当前ExtensionAbility组件的类型,取值为:
<br/>
-
form:卡片的ExtensionAbility。
<br/>
-
workScheduler:延时任务的ExtensionAbility。
<br/>
-
inputMethod:输入法的ExtensionAbility。
<br/>
-
service:后台运行的service组件。
<br/>
-
accessibility:辅助能力的ExtensionAbility。
<br/>
-
dataShare:数据共享的ExtensionAbility。
<br/>
-
fileShare:文件共享的ExtensionAbility。
<br/>
-
staticSubscriber:静态广播的ExtensionAbility。
<br/>
-
wallpaper:壁纸的ExtensionAbility。
<br/>
-
backup:数据备份的ExtensionAbility。
<br/>
-
window:该ExtensionAbility会在启动过程中创建一个window,为开发者提供界面开发。开发者开发出来的界面将通过abilityComponent控件组合到其他应用的窗口中。
<br/>
-
thumbnail:获取文件缩略图的ExtensionAbility,开发者可以对自定义文件类型的文件提供缩略。
<br/>
-
preview:该ExtensionAbility会将文件解析后在一个窗口中显示,开发者可以通过将此窗口组合到其他应用窗口中。
<br/>
-
print:打印框架的ExtensionAbility。
<br/>
>
**说明:**
<br/>
>
其中service和dataShare类型,仅支持系统应用配置,三方应用配置不生效。 | 字符串 | 该标签不可缺省。 |
| label | 标识当前ExtensionAbility组件对用户显示的名称,标签值配置为该名称的资源索引以支持多语言。
<br/>
**说明:**
<br/>
如果ExtensionAbility被配置当前Module的mainElement时,该标签必须配置,且应用内唯一。 | 字符串 | 该标签不可缺省。 |
| type | 标识当前ExtensionAbility组件的类型,取值为:
<br/>
-
form:卡片的ExtensionAbility。
<br/>
-
workScheduler:延时任务的ExtensionAbility。
<br/>
-
inputMethod:输入法的ExtensionAbility。
<br/>
-
service:后台运行的service组件。
<br/>
-
accessibility:辅助能力的ExtensionAbility。
<br/>
-
dataShare:数据共享的ExtensionAbility。
<br/>
-
fileShare:文件共享的ExtensionAbility。
<br/>
-
staticSubscriber:静态广播的ExtensionAbility。
<br/>
-
wallpaper:壁纸的ExtensionAbility。
<br/>
-
backup:数据备份的ExtensionAbility。
<br/>
-
window:该ExtensionAbility会在启动过程中创建一个window,为开发者提供界面开发。开发者开发出来的界面将通过abilityComponent控件组合到其他应用的窗口中。
<br/>
-
thumbnail:获取文件缩略图的ExtensionAbility,开发者可以对自定义文件类型的文件提供缩略。
<br/>
-
preview:该ExtensionAbility会将文件解析后在一个窗口中显示,开发者可以通过将此窗口组合到其他应用窗口中。
<br/>
-
print:打印框架的ExtensionAbility。
<br/>
**说明:**
<br/>
其中service和dataShare类型,仅支持系统应用配置,三方应用配置不生效。 | 字符串 | 该标签不可缺省。 |
| permissions | 标识当前ExtensionAbility组件自定义的权限信息。当其他应用访问该ExtensionAbility时,需要申请相应的权限信息。
<br/>
一个数组元素为一个权限名称。通常采用反向域名格式(最大255字节),可以是系统预定义的权限,也可以是该应用自定义的权限。如果是后者,需与defPermissions标签中定义的某个权限的name标签值一致。 | 字符串数组 | 该标签可缺省,缺省值为空。 |
| uri | 标识当前ExtensionAbility组件提供的数据URI,为字符数组类型(最大长度255),用反向域名的格式表示。
<br/>
>
**说明:**
<br/>
>
该标签在type为dataShare类型的ExtensionAbility时,不可缺省。 | 字符串 | 该标签可缺省,缺省值为空。 |
|skills | 标识当前ExtensionAbility组件能够接收的
[
Want
](
../application-models/want-overview.md
)
的特征集,为数组格式。
<br/>
配置规则:entry包可以配置多个具有入口能力的skills标签(配置了ohos.want.action.home和entity.system.home)的ExtensionAbility,其中第一个配置了skills标签的ExtensionAbility中的label和icon作为OpenHarmony服务或应用的label和icon。
<br/>
>
**说明:**
<br/>
> OpenHarmony服务的Feature包不能配置具有入口能力的skills标签。
<br/>
>
OpenHarmony应用的Feature包可以配置具有入口能力的skills标签。 | 数组 | 该标签可缺省,缺省值为空。 |
| uri | 标识当前ExtensionAbility组件提供的数据URI,为字符数组类型(最大长度255),用反向域名的格式表示。
<br/>
**说明:**
<br/>
该标签在type为dataShare类型的ExtensionAbility时,不可缺省。 | 字符串 | 该标签可缺省,缺省值为空。 |
|skills | 标识当前ExtensionAbility组件能够接收的
[
Want
](
../application-models/want-overview.md
)
的特征集,为数组格式。
<br/>
配置规则:entry包可以配置多个具有入口能力的skills标签(配置了ohos.want.action.home和entity.system.home)的ExtensionAbility,其中第一个配置了skills标签的ExtensionAbility中的label和icon作为OpenHarmony服务或应用的label和icon。
<br/>
**说明:**
<br/>
OpenHarmony服务的Feature包不能配置具有入口能力的skills标签。
<br/>
OpenHarmony应用的Feature包可以配置具有入口能力的skills标签。 | 数组 | 该标签可缺省,缺省值为空。 |
|
[
metadata
](
#metadata标签
)
| 标识当前ExtensionAbility组件的元信息。 | 对象 | 该标签可缺省,缺省值为空。 |
| exported | 标识当前ExtensionAbility组件是否可以被其他应用调用,为布尔类型。
<br/>
-
true:表示可以被其他应用调用。
<br/>
-
false:表示不可以被其他应用调用。 | 布尔值 | 该标签可缺省,缺省值为false。 |
...
...
@@ -483,8 +483,8 @@ extensionAbilities示例:
| 属性 | 含义 | 类型 | 取值范围 | 默认值 |
| -------- | -------- | -------- | -------- | -------- |
| name | 必须,填写需要使用的权限名称。 | 字符串 | 自定义。 | 无。 |
| reason | 可选,当申请的权限为user_grant权限时此字段必填,用于描述申请权限的原因。
<br/>
>
**说明:**
<br/>
>
当申请的权限为user_grant权限时,如果未填写该字段则不允许在应用市场上架,并且需要进行多语种适配。 | 字符串 | 使用string类资源引用。格式为$string:
\*\*\*
。 | 空。 |
| usedScene | 可选,当申请的权限为user_grant权限时此字段必填。描述权限使用的场景由abilities和when组成。其中abilities可以配置为多个UIAbility组件,when表示调用时机。
<br/>
>
**说明:**
<br/>
>
默认为可选,当申请的权限为user_grant权限时,abilities标签必填,when标签可选。 | abilities:UIAbility或者ExtensionAbility名称的字符串数组
<br/>
when:字符串 | abilities:UIAbility或者ExtensionAbility组件的名称。
<br/>
when:inuse(使用时)、always(始终)。 | abilities:空。
<br/>
when:空。 |
| reason | 可选,当申请的权限为user_grant权限时此字段必填,用于描述申请权限的原因。
<br/>
**说明:**
<br/>
当申请的权限为user_grant权限时,如果未填写该字段则不允许在应用市场上架,并且需要进行多语种适配。 | 字符串 | 使用string类资源引用。格式为$string:
\*\*\*
。 | 空。 |
| usedScene | 可选,当申请的权限为user_grant权限时此字段必填。描述权限使用的场景由abilities和when组成。其中abilities可以配置为多个UIAbility组件,when表示调用时机。
<br/>
**说明:**
<br/>
默认为可选,当申请的权限为user_grant权限时,abilities标签必填,when标签可选。 | abilities:UIAbility或者ExtensionAbility名称的字符串数组
<br/>
when:字符串 | abilities:UIAbility或者ExtensionAbility组件的名称。
<br/>
when:inuse(使用时)、always(始终)。 | abilities:空。
<br/>
when:空。 |
requestPermissions示例:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录