提交 423ebc9f 编写于 作者: Z zengyawen

update docs

Signed-off-by: Nzengyawen <zengyawen1@huawei.com>
上级 76e65e91
# Application Development
- [Application Development Overview](application-dev-guide.md)
- Learn About OpenHarmony
- [OpenHarmony Project](../OpenHarmony-Overview.md)
- [Glossary ](../device-dev/glossary/glossary.md)
- [OpenHarmony Release Notes](../release-notes/Readme.md)
- OpenHarmony 3.x Releases
- [OpenHarmony v3.1 Beta (2021-12-31)](../release-notes/OpenHarmony-v3.1-beta.md)
- [OpenHarmony v3.0.1 LTS (2022-01-12)](../release-notes/OpenHarmony-v3.0.1-LTS.md)
- [OpenHarmony v3.0 LTS (2021-09-30)](../release-notes/OpenHarmony-v3.0-LTS.md)
- OpenHarmony 2.x Releases
- [OpenHarmony v2.2 beta2 (2021-08-04)](../release-notes/OpenHarmony-v2.2-beta2.md)
- [OpenHarmony 2.0 Canary (2021-06-01)](../release-notes/OpenHarmony-2-0-Canary.md)
- OpenHarmony 1.x Releases
- [OpenHarmony v1.1.4 LTS (2022-02-11)](../release-notes/OpenHarmony-v1-1-4-LTS.md)
- [OpenHarmony v1.1.3 LTS (2021-09-30)](../release-notes/OpenHarmony-v1-1-3-LTS.md)
- [OpenHarmony v1.1.2 LTS (2021-08-04)](../release-notes/OpenHarmony-v1.1.2-LTS.md)
- [OpenHarmony 1.1.1 LTS (2021-06-22)](../release-notes/OpenHarmony-1-1-1-LTS.md)
- [OpenHarmony 1.1.0 LTS (2021-04-01)](../release-notes/OpenHarmony-1-1-0-LTS.md)
- [OpenHarmony 1.0 (2020-09-10)](../release-notes/OpenHarmony-1-0.md)
- Quick Start
- [Getting Started with Application Development](quick-start/Readme-EN.md)
- [DevEco Studio \(OpenHarmony\) User Guide](quick-start/deveco-studio-user-guide-for-openharmony.md)
......@@ -569,6 +546,4 @@
- [Nonlinear Container TreeMap](reference/apis/js-apis-treemap.md)
- [Nonlinear Container TreeSet](reference/apis/js-apis-treeset.md)
- [Nonlinear Container LightWeightMap](reference/apis/js-apis-lightweightmap.md)
- [Nonlinear Container LightWeightSet](reference/apis/js-apis-lightweightset.md)
- Contribution
- [How to Contribute](../contribute/documentation-contribution.md)
\ No newline at end of file
- [Nonlinear Container LightWeightSet](reference/apis/js-apis-lightweightset.md)
\ No newline at end of file
此差异已折叠。
......@@ -6,7 +6,7 @@
## 接口说明
详细API含义请参考[js-apis-image.md](https://gitee.com/openharmony/docs/blob/791904121afc0b9887510a6ec0504a23a71e6a3c/zh-cn/application-dev/reference/apis/js-apis-image.md)
详细API含义请参考[js-apis-image.md](../reference/apis/js-apis-image.md)
## 开发步骤
......
......@@ -24,18 +24,18 @@ OpenHarmony提供了一套UI开发框架,即方舟开发框架(ArkUI框架
| 类Web开发范式 | JS语言 | 数据驱动更新 | 界面较为简单的类小程序应用和卡片 | Web前端开发人员 |
| 声明式开发范式 | 扩展的TS语言(eTS) | 数据驱动更新 | 复杂度较大、团队合作度较高的程序 | 移动系统应用开发人员、系统应用开发人员 |
对于DevEco Studio V2.2 Beta1及更高版本,在使用JS语言开发时,除传统代码方式外,还支持使用低代码方式。OpenHarmony低代码开发方式,具有丰富的UI界面编辑功能,遵循[JS开发规范](https://developer.harmonyos.com/cn/docs/documentation/doc-references/js-apis-overview-0000001056361791),通过可视化界面开发方式快速构建布局,可有效降低用户的上手成本并提升用户构建UI界面的效率。
对于DevEco Studio V2.2 Beta1及更高版本,在使用JS语言开发时,除传统代码方式外,还支持使用低代码方式。OpenHarmony低代码开发方式,具有丰富的UI界面编辑功能,遵循[JS开发规范](../reference/apis),通过可视化界面开发方式快速构建布局,可有效降低用户的上手成本并提升用户构建UI界面的效率。
### Ability
[Ability](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/ability/ability-brief.md)是应用所具备能力的抽象,也是应用程序的重要组成部分。一个应用可以具备多种能力(即可以包含多个Ability)。OpenHarmony支持应用以Ability为单位进行部署。
[Ability](../ability/ability-brief.md)是应用所具备能力的抽象,也是应用程序的重要组成部分。一个应用可以具备多种能力(即可以包含多个Ability)。OpenHarmony支持应用以Ability为单位进行部署。
Ability可以分为[FA(Feature Ability)](https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/glossary/glossary.md#f)[PA(Particle Ability)](https://gitee.com/openharmony/docs/blob/master/zh-cn/device-dev/glossary/glossary.md#p)两种类型,每种类型为开发者提供了不同的模板,以便实现不同的业务功能。其中,FA支持[Page Ability](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/ability/fa-pageability.md)模板,以提供与用户交互的能力。一个Page Ability可以含有一个或多个页面(即Page),Page Ability与Page的关系如下图所示:
![zh-cn_image_0000001215206886](figures/zh-cn_image_0000001215206886.png)
快速入门提供了一个含有两个页面的Page Ability实例。更多Ability的开发内容及指导,请参见[Ability](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/ability/ability-brief.md)
快速入门提供了一个含有两个页面的Page Ability实例。更多Ability的开发内容及指导,请参见[Ability开发](../ability/Readme-CN.md)
## 工具准备
......
......@@ -149,7 +149,7 @@
页面间的导航可以通过页面路由router来实现。页面路由router根据页面uri找到目标页面,从而实现跳转。使用页面路由请导入router模块。
1. **第一个页面跳转到第二个页面。**
在第一个页面中,跳转按钮绑定onClick方法,当按钮点击时触发页面路由变化,跳转到第二页。“**index.ets**”文件的示例如下:
在第一个页面中,跳转按钮绑定onClick方法,点击按钮时跳转到第二页。“**index.ets**”文件的示例如下:
```
......@@ -178,7 +178,7 @@
.backgroundColor('#0D9FFB')
.width('40%')
.height('5%')
// 跳转按钮绑定onClicke方法,点击时触发页面路由变化,跳转到第二页
// 跳转按钮绑定onClicke方法,点击按钮时跳转到第二页
.onClick(()=>{
router.push({uri:'pages/second'})
})
......@@ -191,7 +191,7 @@
```
2. **第二个页面返回到第一个页面。**
在第二个页面中,返回按钮绑定onClick方法,当按钮点击时触发页面路由返回,返回到第一页。“**second.ets**”文件的示例如下:
在第二个页面中,返回按钮绑定onClick方法,点击按钮时返回到第一页。“**second.ets**”文件的示例如下:
```
......@@ -218,7 +218,7 @@
.backgroundColor('#0D9FFB')
.width('40%')
.height('5%')
// 返回按钮绑定onClicke方法,点击时触发页面返回,返回到第一页
// 返回按钮绑定onClicke方法,点击按钮时返回到第一页
.onClick(()=>{
router.back()
})
......
......@@ -38,10 +38,11 @@ OpenHarmony低代码开发方式,具有丰富的UI界面编辑功能,遵循[
![zh-cn_image_0000001216753776](figures/zh-cn_image_0000001216753776.png)
- **pages &gt; index &gt; index.js**:低代码页面的逻辑描述文件,定义了页面里所用到的所有的逻辑关系,比如数据、事件等,详情请参考[JS语法参考](https://developer.harmonyos.com/cn/docs/documentation/doc-guides/js-framework-syntax-js-0000000000611432)。如果创建了多个低代码页面,则pages目录下会生成多个页面文件夹及对应的js文件。
- **pages &gt; index &gt; index.js**:低代码页面的逻辑描述文件,定义了页面里所用到的所有的逻辑关系,比如数据、事件等,详情请参考[JS语法参考](../ui/js-framework-syntax-js.md)。如果创建了多个低代码页面,则pages目录下会生成多个页面文件夹及对应的js文件。
> ![icon-note.gif](public_sys-resources/icon-note.gif) **说明:**
> 使用低代码页面开发时,其关联js文件的同级目录中不能包含hml和css页面,例如上图中的**js &gt; MainAbility &gt; pages &gt; index**目录下不能包含hml与css文件,否则会出现编译报错。
- **pages &gt; index &gt; index.visual**:visual文件存储低代码页面的数据模型,双击该文件即可打开低代码页面,进行可视化开发设计。如果创建了多个低代码页面,则pages目录下会生成多个页面文件夹及对应的visual文件。
......@@ -102,7 +103,8 @@ OpenHarmony低代码开发方式,具有丰富的UI界面编辑功能,遵循[
页面间的导航可以通过[页面路由router](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/ui/ui-js-building-ui-routes.md)来实现。页面路由router根据页面uri找到目标页面,从而实现跳转。使用页面路由请导入router模块。
1. **第一个页面跳转到第二个页面。**
在第一个页面中,跳转按钮绑定onclick方法,当按钮点击时触发页面路由变化,跳转到第二页。需同时处理js文件及visual文件。
在第一个页面中,跳转按钮绑定onclick方法,点击按钮时跳转到第二页。需同时处理js文件及visual文件。
-**index.js**”示例如下:
```
......@@ -117,12 +119,12 @@ OpenHarmony低代码开发方式,具有丰富的UI界面编辑功能,遵循[
}
```
-**index.viusal**”: 打开index.visual,选中画布上的Button组件。点击右侧属性样式栏中的事件图标![zh-cn_image_0000001215388136](figures/zh-cn_image_0000001215388136.png)(Events),鼠标点击Click事件的输入框,选择onclick事件,如下所示:
![zh-cn_image_0000001261137889](figures/zh-cn_image_0000001261137889.png)
-**index.viusal**”: 打开index.visual,选中画布上的Button组件。点击右侧属性样式栏中的事件图标![zh-cn_image_0000001215388136](figures/zh-cn_image_0000001215388136.png)(Events),鼠标点击Click事件的输入框,选择onclick事件,如下所示:
![zh-cn_image_0000001261137889](figures/zh-cn_image_0000001261137889.png)
2. **第二个页面返回到第一个页面。**
在第二个页面中,返回按钮绑定onClick方法,当按钮点击时触发页面路由返回,返回到第二页。
在第二个页面中,返回按钮绑定onClick方法,点击按钮时返回到第一页。
需同时处理js文件及visual文件。
......
......@@ -21,13 +21,14 @@
- **entry:** OpenHarmony工程模块,编译构建生成一个Hap包。
- **entry &gt; src &gt; main &gt; js** :用于存放js源码。
- **entry &gt; src &gt;main &gt; js &gt; MainAbility** :应用/服务的入口。
- **entry &gt; src &gt;main &gt; js &gt; MainAbility &gt; i18n** :用于配置不同语言场景资源内容,比如应用文本词条、图片路径资源等。
- **entry &gt; src &gt;main &gt; js &gt; MainAbility &gt; pages** :MainAbility包含的页面。
- **entry &gt; src &gt;main &gt;js &gt; MainAbility &gt; app.js** :承载Ability生命周期。
- **entry &gt; src &gt; main &gt; resources** :用于存放应用/服务所用到的资源文件,如图形、多媒体、字符串、布局文件等。
- **entry &gt; src &gt; main &gt; config.json** :模块配置文件。主要包含HAP包的配置信息、应用在具体设备上的配置信息以及应用的全局配置信息。
- **entry &gt; build-profile.json5** :模块的模块信息 、编译信息配置项,包括 buildOption target配置等。
- **entry &gt; hvigorfile.js** :模块级编译构建任务脚本,开发者可以自定义相关任务和代码实现。
- **build-profile.json5** :应用级配置信息,包括签名、产品配置等。
- **hvigorfile.js** :应用级编译构建任务脚本。
......@@ -157,7 +158,7 @@
页面间的导航可以通过[页面路由router](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/ui/ui-js-building-ui-routes.md)来实现。页面路由router根据页面uri找到目标页面,从而实现跳转。使用页面路由请导入router模块。
1. **第一个页面跳转到第二个页面。**
在第一个页面中,跳转按钮绑定onClick方法,当按钮点击时触发页面路由变化,跳转到第二页。“**index.js**”示例如下:
在第一个页面中,跳转按钮绑定onClick方法,点击按钮时跳转到第二页。“**index.js**”示例如下:
```
......@@ -173,7 +174,7 @@
```
2. **第二个页面返回到第一个页面。**
在第二个页面中,返回按钮绑定onClick方法,当按钮点击时触发页面路由返回,返回到第二页。“**second.js**”示例如下:
在第二个页面中,返回按钮绑定onClick方法,点击按钮时返回到第二页。“**second.js**”示例如下:
```
......
......@@ -313,7 +313,7 @@ cameraManager.on('cameraStatus', (cameraStatusInfo) => {
## Camera
相机实例
调用[camera.getCameraManager](#cameragetcameramanager)后,将返回Camera实例,包括相机ID、位置、类型、连接类型等相机相关的元数据
**系统能力:** 以下各项对应的系统能力均为SystemCapability.Multimedia.Camera.Core。
......@@ -327,19 +327,21 @@ cameraManager.on('cameraStatus', (cameraStatusInfo) => {
**示例:**
```
var cameraManager = await camera.getCameraManager();
var cameras = await cameraManager.getCameras();
var cameraObj = cameras[0];
var cameraId = cameraObj.cameraId;
var cameraPosition = cameraObj.cameraPosition;
var cameraType = cameraObj.cameraType;
var cameraId = cameraObj.connectionType;
async function getCameraInfo() {
var cameraManager = await camera.getCameraManager();
var cameras = await cameraManager.getCameras();
var cameraObj = cameras[0];
var cameraId = cameraObj.cameraId;
var cameraPosition = cameraObj.cameraPosition;
var cameraType = cameraObj.cameraType;
var cameraId = cameraObj.connectionType;
}
```
## CameraStatusInfo
相机状态信息。
相机管理器回调返回的接口实例,表示相机状态信息。
**系统能力:** 以下各项对应的系统能力均为SystemCapability.Multimedia.Camera.Core。
......@@ -565,7 +567,7 @@ setFlashMode(flashMode: FlashMode): Promise<void\>
**示例:**
```
cameraInput.setFlashMode(flashMode).then() => {
cameraInput.setFlashMode((flashMode).then() => {
console.log('Promise returned with the successful execution of setFlashMode.');
})
```
......@@ -613,7 +615,7 @@ getFlashMode(): Promise<FlashMode\>
**示例:**
```
cameraInput.getFlashMode().then(flashMode) => {
cameraInput.getFlashMode().then((flashMode) => {
console.log('Promise returned with current flash mode : ' + flashMode);
})
```
......@@ -727,7 +729,7 @@ setFocusMode(afMode: FocusMode): Promise<void\>
**示例:**
```
cameraInput.setFocusMode(afMode).then() => {
cameraInput.setFocusMode(afMode).then(() => {
console.log('Promise returned with the successful execution of setFocusMode.');
})
```
......@@ -775,7 +777,7 @@ getFocusMode(): Promise<FocusMode\>
**示例:**
```
cameraInput.getFocusMode().then(afMode) => {
cameraInput.getFocusMode().then((afMode) => {
console.log('Promise returned with current focus mode : ' + afMode);
})
```
......@@ -797,7 +799,7 @@ getZoomRatioRange\(callback: AsyncCallback<Array<number\>\>\): void
**示例:**
```
cameraInput.getZoomRatioRange(err, zoomRatioRange) => {
cameraInput.getZoomRatioRange((err, zoomRatioRange) => {
if (err) {
console.error('Failed to get the zoom ratio range. ${err.message}');
return;
......@@ -878,7 +880,7 @@ setZoomRatio(zoomRatio: number): Promise<void\>
**示例:**
```
cameraInput.setZoomRatio(zoomRatio).then() => {
cameraInput.setZoomRatio(zoomRatio).then(() => {
console.log('Promise returned with the successful execution of setZoomRatio.');
})
```
......@@ -926,7 +928,7 @@ getZoomRatio(): Promise<number\>
**示例:**
```
cameraInput.getZoomRatio().then(zoomRatio) => {
cameraInput.getZoomRatio().then((zoomRatio) => {
console.log('Promise returned with current zoom ratio : ' + zoomRatio);
})
```
......@@ -1004,7 +1006,7 @@ cameraInput.on('focusStateChange', (focusState) => {
### on('error')
on('error', callback: ErrorCallback<CameraInputError\>): void
on(type: 'error', callback: ErrorCallback<CameraInputError\>): void
监听CameraInput的错误事件,通过注册回调函数获取结果。
......@@ -1082,7 +1084,7 @@ createCaptureSession\(context: Context, callback: AsyncCallback<CaptureSession\>
**示例:**
```
camera.createCaptureSession(context), (err, captureSession) => {
camera.createCaptureSession((context), (err, captureSession) => {
if (err) {
console.error('Failed to create the CaptureSession instance. ${err.message}');
return;
......@@ -1852,7 +1854,7 @@ createPreviewOutput(surfaceId: string, callback: AsyncCallback<PreviewOutput\>):
**示例:**
```
camera.createPreviewOutput(surfaceId), (err, previewOutput) => {
camera.createPreviewOutput((surfaceId), (err, previewOutput) => {
if (err) {
console.error('Failed to create the PreviewOutput instance. ${err.message}');
return;
......@@ -2029,7 +2031,7 @@ createPhotoOutput(surfaceId: string, callback: AsyncCallback<PhotoOutput\>): voi
**示例:**
```
camera.createPhotoOutput(surfaceId), (err, photoOutput) => {
camera.createPhotoOutput((surfaceId), (err, photoOutput) => {
if (err) {
console.error('Failed to create the PhotoOutput instance. ${err.message}');
return;
......@@ -2078,6 +2080,8 @@ camera.createPhotoOutput(surfaceId).then((photoOutput) => {
| ROTATION_180 | 180 | 图片旋转180度。 |
| ROTATION_270 | 270 | 图片旋转270度。 |
## QualityLevel
枚举,图片质量。
......@@ -2350,7 +2354,7 @@ createVideoOutput(surfaceId: string, callback: AsyncCallback<VideoOutput\>): voi
**示例:**
```
camera.createVideoOutput(surfaceId), (err, videoOutput) => {
camera.createVideoOutput((surfaceId), (err, videoOutput) => {
if (err) {
console.error('Failed to create the VideoOutput instance. ${err.message}');
return;
......
# 应用开发
- [应用开发导读](application-dev-guide.md)
- 了解OpenHarmony
- [了解OpenHarmony开源项目](../OpenHarmony-Overview_zh.md)
- [术语](../device-dev/glossary/glossary.md)
- [版本说明](../release-notes/Readme.md)
- OpenHarmony 3.x Releases
- [OpenHarmony v3.1 Beta (2021-12-31)](../release-notes/OpenHarmony-v3.1-beta.md)
- [OpenHarmony v3.0.1 LTS (2022-01-12)](../release-notes/OpenHarmony-v3.0.1-LTS.md)
- [OpenHarmony v3.0 LTS (2021-09-30)](../release-notes/OpenHarmony-v3.0-LTS.md)
- OpenHarmony 2.x Releases
- [OpenHarmony v2.2 beta2 (2021-08-04)](../release-notes/OpenHarmony-v2.2-beta2.md)
- [OpenHarmony 2.0 Canary (2021-06-01)](../release-notes/OpenHarmony-2-0-Canary.md)
- OpenHarmony 1.x Releases
- [OpenHarmony v1.1.4 LTS (2022-02-11)](../release-notes/OpenHarmony-v1-1-4-LTS.md)
- [OpenHarmony v1.1.3 LTS (2021-09-30)](../release-notes/OpenHarmony-v1-1-3-LTS.md)
- [OpenHarmony v1.1.2 LTS (2021-08-04)](../release-notes/OpenHarmony-v1.1.2-LTS.md)
- [OpenHarmony 1.1.1 LTS (2021-06-22)](../release-notes/OpenHarmony-1-1-1-LTS.md)
- [OpenHarmony 1.1.0 LTS (2021-04-01)](../release-notes/OpenHarmony-1-1-0-LTS.md)
- [OpenHarmony 1.0 (2020-09-10)](../release-notes/OpenHarmony-1-0.md)
- 快速开始
- [应用开发快速入门](quick-start/Readme-CN.md)
- DevEco Studio(OpenHarmony)使用指南
......@@ -673,7 +649,4 @@
- [非线性容器LightWeightSet](reference/apis/js-apis-lightweightset.md)
- 定制管理
- [配置策略](reference/apis/js-apis-config-policy.md)
- [企业设备管理](reference/apis/js-apis-enterprise-device-manager.md)
- 贡献
- [参与贡献](../contribute/贡献文档.md)
\ No newline at end of file
- [企业设备管理](reference/apis/js-apis-enterprise-device-manager.md)
\ No newline at end of file
此差异已折叠。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册