未验证 提交 522e22b5 编写于 作者: Z zhongjianfei 提交者: Gitee

!74 修改bug

Merge pull request !74 from zhongjianfei/zjf1202
...@@ -107,7 +107,7 @@ ...@@ -107,7 +107,7 @@
- [module的切换](module-switch.md) - [module的切换](module-switch.md)
- 组件切换 - 组件切换
- [PageAbility切换](pageability-switch.md) - [PageAbility切换](pageability-switch.md)
- [ServiceAbility切换](aerviceability-switch.md) - [ServiceAbility切换](serviceability-switch.md)
- [DataAbility切换](dataability-switch.md) - [DataAbility切换](dataability-switch.md)
- [卡片切换](widget-switch.md) - [卡片切换](widget-switch.md)
- API切换 - API切换
......
...@@ -5,11 +5,12 @@ ...@@ -5,11 +5,12 @@
- **应用包名配置** - **应用包名配置**
应用包名需在config.json文件中app标签下配置bundleName字段,该字段用于指定应用的包名,需保证唯一性。包名是由字母、数字、下划线(_)和点号(.)组成的字符串,必须以字母开头。支持的字符串长度为7~127字节。包名通常采用反向域名形式表示(例如,"com.example.myapplication")。建议第一级为域名后缀"com",第二级为厂商/个人名,也可以采用多级。应用名称配置可以参考[app标签说明](../quick-start/app-structure.md) 应用包名需在config.json文件中app标签下配置bundleName字段,该字段用于指定应用的包名,需保证唯一性。包名是由字母、数字、下划线(_)和点号(.)组成的字符串,必须以字母开头。支持的字符串长度为7~127字节。包名通常采用反向域名形式表示(例如,"com.example.myapplication")。建议第一级为域名后缀"com",第二级为厂商/个人名,也可以采用多级。应用名称配置可以参考[app标签说明](../quick-start/app-structure.md)
- **应用图标和标签配置** - **应用图标和标签配置**
FA模型不支持直接配置应用图标和标签,会以符合规则的PageAbility的图标和标签作为应用图标和标签。PageAbility的图标和标签配置请参见[PageAbility组件配置](pageability-configuration.md)。需在config.json文件的abilities标签下配置icon字段,标签值为资源文件的索引。图标需要在配置IDE的资源文件中,路径为/resource/base/media。取值示例:$media:ability_icon。标签值为资源文件的索引,标识Ability对用户显示的名称。取值可以是Ability名称,也可以是对该名称的资源索引,以支持多语言。如果在该Ability的skills属性中,actions的取值包含 "action.system.home",entities取值中包含"entity.system.home",则该Ability的icon和label将同时作为应用的icon和label。如果存在多个符合条件的Ability,则取位置靠前的Ability的icon和label作为应用的icon和label。应用图标和标签配置可以参考[ablities标签说明](../quick-start/module-structure.md)
FA模型不支持直接配置应用图标和标签,会以符合规则的PageAbility的图标和标签作为应用图标和标签。PageAbility的图标和标签配置请参见[PageAbility组件配置](pageability-configuration.md)。需在config.json文件的abilities标签下配置icon字段,标签值为资源文件的索引。图标需要在配置IDE的资源文件中,路径为/resource/base/media。取值示例:$media:ability_icon。标签值为资源文件的索引,标识Ability对用户显示的名称。取值可以是Ability名称,也可以是对该名称的资源索引,以支持多语言。如果在该Ability的skills属性中,actions的取值包含 "action.system.home",entities取值中包含"entity.system.home",则该Ability的icon和label将同时作为应用的icon和label。如果存在多个符合条件的Ability,则取位置靠前的Ability的icon和label作为应用的icon和label。应用图标和标签配置可以参考[ablities标签说明](../quick-start/module-structure.md)
```json ```json
"abilities": [ "abilities": [
...@@ -26,10 +27,13 @@ ...@@ -26,10 +27,13 @@
``` ```
- **应用版本声明配置** - **应用版本声明配置**
应用版本声明配置需在config.json中的app标签下配置version字段,以说明应用当前的版本号和版本名称以及应用能够兼容的最低历史版本号。应用版本配置说明可以参考[version标签说明](../quick-start/module-structure.md) 应用版本声明配置需在config.json中的app标签下配置version字段,以说明应用当前的版本号和版本名称以及应用能够兼容的最低历史版本号。应用版本配置说明可以参考[version标签说明](../quick-start/module-structure.md)
- **Module支持的设备类型配置** - **Module支持的设备类型配置**
Module支持的设备类型需要在config.json文件中配置deviceType字段,如果deviceType标签中添加了某种设备,则表明当前的module支持在改设备上运行。具体的deviceType配置规则可以参考[deviceType标签说明](../quick-start/module-structure.md) Module支持的设备类型需要在config.json文件中配置deviceType字段,如果deviceType标签中添加了某种设备,则表明当前的module支持在改设备上运行。具体的deviceType配置规则可以参考[deviceType标签说明](../quick-start/module-structure.md)
- **组件权限申请配置** - **组件权限申请配置**
组件权限申请配置需在confog.json中的module标签下配置reqPermission字段。来声明需要申请权限的名称,申请权限的原因以及权限使用的场景。组件权限申请可以参考[reqPermission标签说明](../quick-start/module-structure.md) 组件权限申请配置需在confog.json中的module标签下配置reqPermission字段。来声明需要申请权限的名称,申请权限的原因以及权限使用的场景。组件权限申请可以参考[reqPermission标签说明](../quick-start/module-structure.md)
\ No newline at end of file
...@@ -63,7 +63,7 @@ let connId = featureAbility.connectAbility(request, option) ...@@ -63,7 +63,7 @@ let connId = featureAbility.connectAbility(request, option)
同时,Service侧也需要在onConnect()时返回IRemoteObject,从而定义与Service进行通信的接口。onConnect()需要返回一个IRemoteObject对象。OpenHarmony提供了IRemoteObject的默认实现,开发者可以通过继承rpc.RemoteObject来创建自定义的实现类。 同时,Service侧也需要在onConnect()时返回IRemoteObject,从而定义与Service进行通信的接口。onConnect()需要返回一个IRemoteObject对象。OpenHarmony提供了IRemoteObject的默认实现,开发者可以通过继承rpc.RemoteObject来创建自定义的实现类。
Service侧把自身的实例返回给调用侧的代码示例如下: Service侧把自身的实例返回给调用侧的示例代码如下:
```ts ```ts
import rpc from "@ohos.rpc" import rpc from "@ohos.rpc"
......
...@@ -2,7 +2,8 @@ ...@@ -2,7 +2,8 @@
1. 创建ServiceAbility。 1. 创建ServiceAbility。
重写ServiceAbility的生命周期方法,添加其他Ability请求与ServiceAbility交互时的处理方法。
重写ServiceAbility的生命周期方法,添加其他Ability请求与ServiceAbility交互时的处理方法。
```ts ```ts
import rpc from "@ohos.rpc" import rpc from "@ohos.rpc"
...@@ -38,6 +39,7 @@ ...@@ -38,6 +39,7 @@
``` ```
2. 注册ServiceAbility。 2. 注册ServiceAbility。
ServiceAbility需要在应用配置文件config.json中进行注册,注册类型type需要设置为service。"visible"属性表示ServiceAbility是否可以被其他应用调用,true表示可以被其他应用调用,false表示不能被其他应用调用(仅应用内可以调用)。若ServiceAbility需要被其他应用调用,注册ServiceAbility时需要设置"visible"为true,同时需要设置支持关联启动。ServiceAbility的启动规则详见[组件启动规则](component-startup-rules.md)章节。 ServiceAbility需要在应用配置文件config.json中进行注册,注册类型type需要设置为service。"visible"属性表示ServiceAbility是否可以被其他应用调用,true表示可以被其他应用调用,false表示不能被其他应用调用(仅应用内可以调用)。若ServiceAbility需要被其他应用调用,注册ServiceAbility时需要设置"visible"为true,同时需要设置支持关联启动。ServiceAbility的启动规则详见[组件启动规则](component-startup-rules.md)章节。
```json ```json
......
...@@ -11,7 +11,8 @@ ...@@ -11,7 +11,8 @@
![model-switch-overview2](figures/model-switch-overview2.png) ![model-switch-overview2](figures/model-switch-overview2.png)
- [组件切换](pageability-switch.md):PageAbility/ServiceAbility/DataAbility切换为UIAbility和ExtensionAbility(图片仅展示了FA模型的PageAbility切换成Stage模型的UIAbility:下图左侧为FA模型,app.ets为FA模型的PageAbility组件;下图右侧为Stage模型,EntryAbility.ts为Stage模型的UIAbility组件)。 - [组件切换](pageability-switch.md):PageAbility/ServiceAbility/DataAbility切换为UIAbility和ExtensionAbility(图片仅展示了FA模型的PageAbility切换成Stage模型的UIAbility:下图左侧为FA模型,app.ets为FA模型的PageAbility组件;下图右侧为Stage模型,EntryAbility.ts为Stage模型的UIAbility组件)。
![model-switch-overview3](figures/model-switch-overview3.png)
![model-switch-overview3](figures/model-switch-overview3.png)
- [卡片切换](widget-switch.md):将FA模型的FormAbility切换为Stage模型的FormExtensionAbility(下图中的**Service Widget**在FA中为FormAbility,在Stage中为FormExtensionAbility)。 - [卡片切换](widget-switch.md):将FA模型的FormAbility切换为Stage模型的FormExtensionAbility(下图中的**Service Widget**在FA中为FormAbility,在Stage中为FormExtensionAbility)。
![model-switch-overview4](figures/model-switch-overview4.png) ![model-switch-overview4](figures/model-switch-overview4.png)
......
# module的切换 # module的切换
从FA模型切换到Stage模型时,开发者需要将config.json文件module标签下的配置迁移到module.json5配置文件module标签下,具体差异见下 从FA模型切换到Stage模型时,开发者需要将config.json文件module标签下的配置迁移到module.json5配置文件module标签下,具体差异见下列表格
### **表1** FA模型module标签与Stage模型module标签差异对比
**表1** FA模型module标签与Stage模型module标签差异对比
| FA标签 | 标签说明 | 对应的Stage标签 | 差异说明 | | FA标签 | 标签说明 | 对应的Stage标签 | 差异说明 |
| -------- | -------- | -------- | -------- | | -------- | -------- | -------- | -------- |
......
...@@ -14,8 +14,6 @@ ...@@ -14,8 +14,6 @@
应用开发者可在config.json配置文件中通过“launchType”配置启动模式。示例如下: 应用开发者可在config.json配置文件中通过“launchType”配置启动模式。示例如下:
```json ```json
{ {
"module": { "module": {
......
...@@ -3,8 +3,8 @@ ...@@ -3,8 +3,8 @@
PageAbility生命周期是PageAbility被调度到INACTIVE、ACTIVE、BACKGROUND等各个状态的统称。PageAbility生命周期流转及状态说明见如下图1、表1所示。 PageAbility生命周期是PageAbility被调度到INACTIVE、ACTIVE、BACKGROUND等各个状态的统称。PageAbility生命周期流转及状态说明见如下图1、表1所示。
**图1** PageAbility生命周期流转
**图1** PageAbility生命周期流转  
![page-ability-lifecycle](figures/page-ability-lifecycle.png) ![page-ability-lifecycle](figures/page-ability-lifecycle.png)
...@@ -36,8 +36,8 @@ PageAbility生命周期是PageAbility被调度到INACTIVE、ACTIVE、BACKGROUND ...@@ -36,8 +36,8 @@ PageAbility生命周期是PageAbility被调度到INACTIVE、ACTIVE、BACKGROUND
PageAbility生命周期回调与生命周期状态的关系如下图所示。 PageAbility生命周期回调与生命周期状态的关系如下图所示。
**图2** PageAbility生命周期回调与生命周期状态的关系
**图2** PageAbility生命周期回调与生命周期状态的关系  
![fa-pageAbility-lifecycle](figures/fa-pageAbility-lifecycle.png) ![fa-pageAbility-lifecycle](figures/fa-pageAbility-lifecycle.png)
......
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
对应config.json文件的示例代码如下所示: 对应config.json文件的示例代码如下所示:
```ts ```json
{ {
"module": { "module": {
// ... // ...
...@@ -32,8 +32,6 @@ ...@@ -32,8 +32,6 @@
通过动态弹窗向用户申请授权: 通过动态弹窗向用户申请授权:
```ts ```ts
import featureAbility from '@ohos.ability.featureAbility'; import featureAbility from '@ohos.ability.featureAbility';
......
...@@ -71,7 +71,7 @@ FormAbility生命周期接口如下: ...@@ -71,7 +71,7 @@ FormAbility生命周期接口如下:
FormProvider类有如下API接口,具体的API介绍详见[接口文档](../reference/apis/js-apis-app-form-formprovider.md) FormProvider类有如下API接口,具体的API介绍详见[接口文档](../reference/apis/js-apis-app-form-formprovider.md)
| 接口名 | 描述 | | 接口名 | 描述 |
| -------- | -------- | | -------- | -------- |
| setFormNextRefreshTime(formId: string, minute: number, callback: AsyncCallback<void>): void; | 设置指定卡片的下一次更新时间。 | | setFormNextRefreshTime(formId: string, minute: number, callback: AsyncCallback<void>): void; | 设置指定卡片的下一次更新时间。 |
| setFormNextRefreshTime(formId: string, minute: number): Promise<void>; | 设置指定卡片的下一次更新时间,以promise方式返回。 | | setFormNextRefreshTime(formId: string, minute: number): Promise<void>; | 设置指定卡片的下一次更新时间,以promise方式返回。 |
...@@ -82,7 +82,7 @@ FormProvider类有如下API接口,具体的API介绍详见[接口文档](../re ...@@ -82,7 +82,7 @@ FormProvider类有如下API接口,具体的API介绍详见[接口文档](../re
formBindingData类有如下API接口,具体的API介绍详见[接口文档](../reference/apis/js-apis-app-form-formbindingdata.md) formBindingData类有如下API接口,具体的API介绍详见[接口文档](../reference/apis/js-apis-app-form-formbindingdata.md)
| 接口名 | 描述 | | 接口名 | 描述 |
| -------- | -------- | | -------- | -------- |
| createFormBindingData(obj?: Object \| string): FormBindingData | 创建一个FormBindingData对象。 | | createFormBindingData(obj?: Object \| string): FormBindingData | 创建一个FormBindingData对象。 |
......
...@@ -5,20 +5,17 @@ ...@@ -5,20 +5,17 @@
- 卡片页面布局:FA模型卡片和Stage模型卡片的布局都采用类web范式开发可以直接复用。 - 卡片页面布局:FA模型卡片和Stage模型卡片的布局都采用类web范式开发可以直接复用。
- 卡片配置文件:FA模型的卡片配置在config.json中,Stage卡片配置在module.json5和form_config.json中(如下图1和图2)。 - 卡片配置文件:FA模型的卡片配置在config.json中,Stage卡片配置在module.json5和form_config.json中(如下图1和图2)。
- 卡片业务逻辑:FA模型和Stage模型在卡片入口文件以及生命周期存在细微的差异(如下图3和图4)。 - 卡片业务逻辑:FA模型和Stage模型在卡片入口文件以及生命周期存在细微的差异(如下图3和图4)。
| 配置项 | FA模型 | Stage模型 |
| 配置项 | FA模型 | Stage模型 | | ---------------- | ------------------------------------------- | ------------------------------------------------------------ |
| -------- | -------- | -------- |
| 配置项位置 | formAbility和forms配置都在config.json文件里 | 一级目录module.json5配置文件中配置extensionAbilities(针对formExtensionAbility的配置),二级目录form_config.json文件中配置forms(针对formExtensionAbility里包含的forms的详细配置) | | 配置项位置 | formAbility和forms配置都在config.json文件里 | 一级目录module.json5配置文件中配置extensionAbilities(针对formExtensionAbility的配置),二级目录form_config.json文件中配置forms(针对formExtensionAbility里包含的forms的详细配置) |
| 卡片代码路径 | srcPath,不带文件名 | srcEntrance,带文件名 | | 卡片代码路径 | srcPath,不带文件名 | srcEntrance,带文件名 |
| 语言 | srcLanguage支持配置为js或ets | 无此配置项,只支持ets | | 语言 | srcLanguage支持配置为js或ets | 无此配置项,只支持ets |
| 是否使能卡片 | formsEnabled | 无,type配置项配置为form即使能 | | 是否使能卡片 | formsEnabled | 无,type配置项配置为form即使能 |
| ability类型 | type:service | type:form | | ability类型 | type:service | type:form |
| 二级目录配置标签 | 无 | metadata。包含name、value、resource。resource用于指向卡片二级目录form_config.json文件的位置 | | 二级目录配置标签 | 无 | metadata:包含name、value、resource。其中resource用于指向卡片二级目录form_config.json文件的位置 |
入口配置差异示意图1: 入口配置差异示意图1:
...@@ -33,7 +30,7 @@ ...@@ -33,7 +30,7 @@
![widget-switch2](figures/widget-switch2.png) ![widget-switch2](figures/widget-switch2.png)
| 入口及生命周期 | FA模型 | Stage模型 | | 入口及生命周期 | FA模型 | Stage模型 |
| -------- | -------- | -------- | | -------- | -------- | -------- |
| 入口文件 | srcPath指向的目录下的form.ts | srcEntrance指向的文件 | | 入口文件 | srcPath指向的目录下的form.ts | srcEntrance指向的文件 |
| 生命周期 | export&nbsp;default | import&nbsp;FormExtension&nbsp;from&nbsp;'\@ohos.app.form.FormExtensionAbility';<br/>export&nbsp;default&nbsp;class&nbsp;FormAbility&nbsp;extends&nbsp;FormExtension | | 生命周期 | export&nbsp;default | import&nbsp;FormExtension&nbsp;from&nbsp;'\@ohos.app.form.FormExtensionAbility';<br/>export&nbsp;default&nbsp;class&nbsp;FormAbility&nbsp;extends&nbsp;FormExtension |
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册