diff --git a/en/device-dev/get-code/figures/3.png b/en/device-dev/get-code/figures/3.png new file mode 100644 index 0000000000000000000000000000000000000000..c99cddf919e6f912aa19c43189f1fdbe895764ac Binary files /dev/null and b/en/device-dev/get-code/figures/3.png differ diff --git a/en/device-dev/get-code/figures/en-us_image_0000001119755646.png b/en/device-dev/get-code/figures/en-us_image_0000001119755646.png new file mode 100644 index 0000000000000000000000000000000000000000..3a24b14afa5429a10663c8eb131b0712819cbd30 Binary files /dev/null and b/en/device-dev/get-code/figures/en-us_image_0000001119755646.png differ diff --git a/en/device-dev/get-code/figures/en-us_image_0000001119915556.png b/en/device-dev/get-code/figures/en-us_image_0000001119915556.png new file mode 100644 index 0000000000000000000000000000000000000000..65723fc68df95d9d4ceca1b6d3ff316e72bd9a84 Binary files /dev/null and b/en/device-dev/get-code/figures/en-us_image_0000001119915556.png differ diff --git a/en/device-dev/get-code/figures/en-us_image_0000001166715379.png b/en/device-dev/get-code/figures/en-us_image_0000001166715379.png new file mode 100644 index 0000000000000000000000000000000000000000..dcf65897e486f38eb7dfadf8cb87b981d41b7df3 Binary files /dev/null and b/en/device-dev/get-code/figures/en-us_image_0000001166715379.png differ diff --git a/en/device-dev/get-code/source-code-acquisition.md b/en/device-dev/get-code/source-code-acquisition.md index 53b228ec167a714dd9a67ed1194d1b76db50238b..f7a7c3f5c758bcac5d10c91de12a53e406205cfd 100644 --- a/en/device-dev/get-code/source-code-acquisition.md +++ b/en/device-dev/get-code/source-code-acquisition.md @@ -2,22 +2,22 @@ - [About OpenHarmony](#section6370143622110) - [Overview of Source Code Acquisition](#section12763342204) -- [Method 1: Acquiring Source Code from Image Sites](#section1186691118430) -- [Method 2: Acquiring Source Code from the Bundle-specific HPM](#section463013147412) - - [When to Use](#section26661067443) - - [Prerequisites](#section1254674354310) - - [How to Use](#section44161731194418) - -- [Method 3: Acquiring Source Code from a Code Repository](#section537312010229) +- [Method 1: Acquiring Source Code from a Code Repository](#section537312010229) - [When to Use](#section10881513459) - - [Preparations](#section10938122310459) - - [Operations](#section151644112456) + - [Prerequisites](#section102871547153314) + - [How to Use](#section429012478331) +- [Method 2: Acquiring Source Code from HPM](#section463013147412) + - [When to Use](#section26661067443) + - [Prerequisites](#section17544943123315) + - [How to Use](#section954619433333) + +- [Method 3: Acquiring Source Code from Image Sites](#section1186691118430) - [Source Code Directories](#section1072115612811) ## About OpenHarmony -OpenHarmony is an open-source project launched by the OpenAtom Foundation. The purpose of this project is to build an open-source, distributed operating system \(OS\) framework for smart IoT devices in the full-scenario, full-connectivity, and full-intelligence era. +OpenHarmony is an open-source project launched by the OpenAtom Foundation. The purpose of this project is to build an open, distributed operating system \(OS\) framework for smart IoT devices in the full-scenario, full-connectivity, and full-intelligence era. The open-source code repositories are available at [https://openharmony.gitee.com](https://openharmony.gitee.com). @@ -28,11 +28,171 @@ The open-source code repositories are available at [https://openharmony.gitee.c This document describes how to acquire OpenHarmony source code and provides its directory structure. The OpenHarmony code is open to you as [bundles](../bundles/overview.md), which can be obtained in any of the following ways: -- **Method 1**: Download the compressed file of a distribution from an image site. To obtain the source code of an earlier version, you are also advised to use this method. +- **Method 1**: Acquire the source code from a code repository. You can use the **repo** or **git** tool to download the latest code from the code repository. - **Method 2**: Obtain the source code from the HarmonyOS Package Manager \(HPM\). Visit the [HPM](https://hpm.harmonyos.com/#/en/home) website, search for your desired open-source distribution, and download the bundle list \(or customize bundles and download the bundle list\). Then use **hpm-cli** to download and install the bundles and compilation toolchain on your local PC. -- **Method 3**: Use the **repo** or **git** tool to download your desired code from the code repository. +- **Method 3**: Download the compressed file of a distribution from an image site. This method provides a fast download speed, so you can also use this method for obtaining the source code of an earlier version. + +## Method 1: Acquiring Source Code from a Code Repository + +### When to Use + +- You want to establish a baseline based on stable OpenHarmony releases and distribute the baseline to your customers. + +- You have interconnected your software with OpenHarmony and need official certification from OpenHarmony. + +- You want to contribute code to the OpenHarmony community after chips, modules, and applications are certified by OpenHarmony. + +- You need to address OpenHarmony issues. + +- You want to learn OpenHarmony source code. + + +### Prerequisites + +1. Register your account with Gitee. +2. Register an SSH public key for access to Gitee. +3. Install the [git client](http://git-scm.com/book/en/v2/Getting-Started-Installing-Git) and [git-lfs](https://gitee.com/vcs-all-in-one/git-lfs?_from=gitee_search#downloading), and configure basic user information. + + ``` + git config --global user.name "yourname" + git config --global user.email "your-email-address" + git config --global credential.helper store + ``` + +4. Run the following commands to install the **repo** tool: + + ``` + curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo # If you do not have the access permission to this directory, download the tool to any other accessible directory and configure the directory to the environment variable. + chmod a+x /usr/local/bin/repo + pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests + ``` + + +### How to Use + +**Obtaining the Source Code for Mini, Small, and Standard Systems \(2.0 Canary\)** + +>![](public_sys-resources/icon-note.gif) **NOTE:** +>You can obtain the latest features from the master code, and develop commercial functionalities based on the release code, which is more stable. + +- **Obtaining OpenHarmony master code** + + Method 1 \(recommended\): Use the **repo** tool to download the source code over SSH. \(You must have registered an SSH public key for access to Gitee.\) + + ``` + repo init -u git@gitee.com:openharmony/manifest.git -b master --no-repo-verify + repo sync -c + repo forall -c 'git lfs pull' + ``` + + Method 2 \(recommended\): Use the **repo** tool to download the source code over HTTPS. + + ``` + repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify + repo sync -c + repo forall -c 'git lfs pull' + ``` + + +- **Obtaining Latest OpenHarmony\_1.0.1\_release code** + + >![](public_sys-resources/icon-note.gif) **NOTE:** + >Currently, only the source code for mini and small systems can be obtained through this release. + + Use the **repo** tool to download the release code. + + ``` + repo init -u https://gitee.com/openharmony/manifest.git -b OpenHarmony_1.0.1_release --no-repo-verify + repo sync -c + repo forall -c 'git lfs pull' + ``` + +- Obtaining the source code of other OpenHarmony releases + + For details about how to obtain the source code of other releases, see the [Release Notes](https://gitee.com/openharmony/docs/blob/master/en/release-notes/OpenHarmony-Release-Notes.md). + + +## Method 2: Acquiring Source Code from HPM + +### When to Use + +If OpenHarmony is new to you, sample solutions are helpful to your development. You can obtain an open-source distribution from the [HPM](https://hpm.harmonyos.com/#/en/home) website, or customize a distribution by adding or deleting bundles of an open-source distribution. Then use **hpm-cli** to download and install the bundles and compilation toolchain on your local PC. + +### Prerequisites -## Method 1: Acquiring Source Code from Image Sites +You must install **Node.js** and HPM on your local PC. The installation procedure is as follows: + +1. Install **Node.js**. + + Download **Node.js** from its official website and install it on your local PC. + + You are advised to install [Node.js](https://nodejs.org/) 12.x \(including npm 6.14.4\) or a later version \(12.13.0 or later is recommended\). + +2. Install the hpm-cli tool using **npm** delivered with **Node.js**. + + Open the CMD window and run the following command: + + ``` + npm install -g @ohos/hpm-cli + ``` + +3. Run the following command to check whether the installation is successful. If the HPM version is displayed, the installation is successful. + + ``` + hpm -V or hpm --version + ``` + +4. Run the following command to upgrade the HPM version: + + ``` + npm update -g @ohos/hpm-cli + ``` + + +### How to Use + +1. Search for distributions. + 1. Access the [HPM](https://hpm.harmonyos.com/#/en/home) page, and click the **Distribution** tab, as shown in the following figure. + 2. Enter a keyword \(for example: **camera**\) in the search box. All matched distributions are found. + 3. Specify filter criteria, such as the bundle type \(for example: **Board support** and **Kernel support**\), to further filter the distributions. + 4. Locate your desired distribution and click it to view details. + + **Figure 1** HPM page + + + ![](figures/en-us_image_0000001119915556.png) + + +2. Learn more about the distribution. + + 1. Read carefully the information about the distribution to learn its application scenarios, features, bundles, usage, and customization methods, as shown in the following figure. + 2. Click **Download** to download the distribution to your local PC. + 3. Click **Custom** to add or delete bundles of the distribution. + + **Figure 2** Example distribution + + + ![](figures/en-us_image_0000001119755646.png) + +3. Customize bundles. + 1. Access the **Custom solution** page, as shown in the following figure. + 2. Set the toggle switch next to a specific optional bundle to delete it from the distribution, or click **Add bundle** to add new bundles. + 3. Enter the basic information about your project, including the bundle name, version, and description, on the right pane. + 4. Click **Download**. The system then generates the OpenHarmony code structure file \(for example, **my\_cust\_dist.zip**\) and saves it to your local PC. + + **Figure 3** Customizing bundles + + + ![](figures/en-us_image_0000001166715379.png) + + +4. Download and install bundles. + 1. Decompress the downloaded file using the CLI tool CMD \(shell in Linux\). + 2. In the generated directory, run the **hpm install** command. + 3. The downloaded bundles are stored in the **ohos\_bundles** folder under the project directory. \(The source code of some bundles will be copied to a specified directory after the bundles are installed.\) + + +## Method 3: Acquiring Source Code from Image Sites To ensure the download performance, you are advised to download the source code or the corresponding solution from the image library of the respective site listed in the table below. @@ -52,47 +212,47 @@ To ensure the download performance, you are advised to download the source code

SHA-256 Verification Code

-

Full code base

+

Full code (for mini and small systems)

-

1.1.0

+

1.1.1

-

Download

+

Download

-

Download

+

Download

Hi3861 solution (binary)

-

1.1.0

+

1.1.1

-

Download

+

Site

-

Download

+

Download

Hi3518 solution (binary)

-

1.1.0

+

1.1.1

Download

-

Download

+

Download

Hi3516 solution (binary)

-

1.1.0

+

1.1.1

-

Download

+

Download

-

Download

+

Download

RELEASE-NOTES

-

1.1.0

+

1.1.1

-

Download

+

Download

-

@@ -101,12 +261,12 @@ To ensure the download performance, you are advised to download the source code

Version Information

-

Site

+

Site

-

SHA-256 Verification Code

+

SHA-256 Verification Code

-

Full code base

+

Full code (for standard systems)

2.0 Canary

@@ -115,7 +275,7 @@ To ensure the download performance, you are advised to download the source code

Download

-

Full code base

+

Full code (for mini and small systems)

1.0 (no longer maintained)

@@ -164,7 +324,7 @@ To ensure the download performance, you are advised to download the source code

Version Information

-

Site

+

Site

SHA-256 Verification Code

@@ -181,196 +341,6 @@ To ensure the download performance, you are advised to download the source code -## Method 2: Acquiring Source Code from the Bundle-specific HPM - -### When to Use - -If OpenHarmony is new to you, sample solutions are helpful to your development. You can obtain an open-source distribution from the [HPM](https://hpm.harmonyos.com/#/en/home) website, or customize a distribution by adding or deleting bundles of an open-source distribution. Then use **hpm-cli** to download and install the bundles and compilation toolchain on your local PC. - -### Prerequisites - -You must install **Node.js** and HPM on your local PC. The installation procedure is as follows: - -1. Install **Node.js**. - - Download **Node.js** from its official website and install it on your local PC. - - You are advised to install [Node.js](https://nodejs.org/) 12.x \(including npm 6.14.4\) or a later version \(12.13.0 or later is recommended\). - -2. Install the hpm-cli tool using **npm** delivered with **Node.js**. - - Open the CMD window and run the following command: - - ``` - npm install -g @ohos/hpm-cli - ``` - -3. Run the following command to check whether the installation is successful. If the HPM version is displayed, the installation is successful. - - ``` - hpm -V or hpm --version - ``` - -4. Run the following command to upgrade the HPM version: - - ``` - npm update -g @ohos/hpm-cli - ``` - - -### How to Use - -1. Search for distributions. - 1. Access the [HPM](https://hpm.harmonyos.com/#/en/home) page, and click the **Distribution** tab, as shown in the following figure. - 2. Enter a keyword \(for example: **camera**\) in the search box. All matched distributions are found. - 3. Specify filter criteria, such as the bundle type \(for example: **Board support** and **Kernel support**\), to further filter the distributions. - 4. Locate your desired distribution and click it to view details. - - **Figure 1** HPM page - - - ![](figures/en-us_image_0000001160590725.png) - - -2. Learn more about the distribution. - - 1. Read carefully the information about the distribution to learn its application scenarios, features, bundles, usage, and customization methods, as shown in the following figure. - 2. Click **Download** to download the distribution to your local PC. - 3. Click **Custom** to add or delete bundles of the distribution. - - **Figure 2** Example distribution - - - ![](figures/en-us_image_0000001114070816.png) - -3. Customize bundles. - 1. Access the **Custom solution** page, as shown in the following figure. - 2. Set the toggle switch next to a specific optional bundle to delete it from the distribution, or click **Add bundle** to add new bundles. - 3. Enter the basic information about your project, including the bundle name, version, and description, on the right pane. - 4. Click **Download**. The system then generates the OpenHarmony code structure file \(for example, **my\_cust\_dist.zip**\) and saves it to your local PC. - - **Figure 3** Customizing bundles - - - ![](figures/en-us_image_0000001113910924.png) - - -4. Download and install bundles. - 1. Decompress the downloaded file using the CLI tool CMD \(shell in Linux\). - 2. In the generated directory, run the **hpm install** command. - 3. The downloaded bundles are stored in the **ohos\_bundles** folder under the project directory. \(The source code of some bundles will be copied to a specified directory after the bundles are installed.\) - - -## Method 3: Acquiring Source Code from a Code Repository - -### When to Use - -- You want to establish a baseline based on stable OpenHarmony releases and distribute the baseline to your customers. - -- You have interconnected your software with OpenHarmony and need official certification from OpenHarmony. - -- You want to contribute code to the OpenHarmony community after chips, modules, and applications are certified by OpenHarmony. - -- You need to address OpenHarmony issues. - -- You want to learn OpenHarmony source code. - - -### Preparations - -1. Register your account with Gitee. -2. Register an SSH public key for access to Gitee. -3. Install the [git client](http://git-scm.com/book/en/v2/Getting-Started-Installing-Git) and [git-lfs](https://gitee.com/vcs-all-in-one/git-lfs?_from=gitee_search#downloading)), and configure basic user information. - - ``` - git config --global user.name "yourname" - git config --global user.email "your-email-address" - git config --global credential.helper store - ``` - -4. Run the following commands to install the **repo** tool: - - ``` - curl https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo # If you do not have the access permission to this directory, download the tool to any other accessible directory and configure the directory to the environment variable. - chmod a+x /usr/local/bin/repo - pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests - ``` - - -### Operations - -**Obtaining the Source Code for Mini and Small Systems** - ->![](public_sys-resources/icon-note.gif) **NOTE:** ->You can obtain the latest features from the master code, and develop commercial functionalities based on the release code, which is more stable. - -- **Obtaining OpenHarmony master code** - - Method 1 \(recommended\): Use the **repo** tool to download the master code. - - ``` - repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify - repo sync -c - repo forall -c 'git lfs pull' - ``` - - Method 2: Run the **git clone** command to clone a single code repository. - - Go to the [code repository homepage](https://gitee.com/openharmony), select the code repository to be cloned, and run the following command: - - ``` - git clone https://gitee.com/openharmony/manifest.git -b master - ``` - - -- **Obtaining OpenHarmony\_1.0.1\_release code** - - Use the **repo** tool to download the release code. - - ``` - repo init -u https://gitee.com/openharmony/manifest.git -b OpenHarmony_1.0.1_release --no-repo-verify - repo sync -c - repo forall -c 'git lfs pull' - ``` - -- Obtaining the source code of other OpenHarmony releases - - For details about how to obtain the source code of other releases, see the [Release Notes](https://gitee.com/openharmony/docs/blob/master/en/release-notes/OpenHarmony-Release-Notes.md). - - -**Obtaining the Source Code for Standard Systems \(2.0 Canary\)** - -1. Create an OpenHarmony working directory. - - ``` - mkdir OpenHarmony - ``` - -2. Go to the OpenHarmony working directory. - - ``` - cd OpenHarmony - ``` - -3. Initialize the repository. - - ``` - repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify - ``` - -4. Update the code. - - ``` - repo sync -c - ``` - -5. Update the binary files. - - ``` - repo forall -c 'git lfs pull' - ``` - - ## Source Code Directories The following table describes the OpenHarmony source code directories. diff --git a/en/device-dev/get-code/tool-acquisition.md b/en/device-dev/get-code/tool-acquisition.md index bd8a78e3960443027aa5eb814e398a39742d491a..ddfc607243ddd0682ed23b79e3f95d59ae1addc6 100644 --- a/en/device-dev/get-code/tool-acquisition.md +++ b/en/device-dev/get-code/tool-acquisition.md @@ -36,7 +36,7 @@ OpenHarmony provides the following two types of Docker environments for you to q

swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker

-

0.0.3

+

0.0.5

The OpenHarmony build environment has been pre-installed. This repository applies to Mini-System Devices (reference memory ≥ 128 KB) and Small-System Devices (reference memory ≥ 1 MB).

@@ -78,7 +78,7 @@ Start building. Docker can be automatically installed only on Ubuntu. If you are - **Automatically Installing Docker \(Ubuntu\)** - Running the following command will automatically install the Docker, pull the image, and start the pulling and building of the corresponding solution in the container. + Running the following command will automatically install Docker, pull the Docker image, and start the pulling and building of the corresponding solution in the container. Method 1: @@ -123,8 +123,7 @@ Start building. Docker can be automatically installed only on Ubuntu. If you are ``` # Pull the image. - docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.3 - # Build the distribution on Linux. + docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.3# Compile the Docker image in the Linux environment. hpm run distWithDocker solution={product} # When using Windows, make sure to configure the Git Bash. hpm config set shellPath "Git Bash path" @@ -134,22 +133,22 @@ Start building. Docker can be automatically installed only on Ubuntu. If you are ## Standalone Docker Environment -The Docker image of OpenHarmony is hosted on [HUAWEI Cloud SWR](https://auth.huaweicloud.com/authui/login.html?service=https%3A%2F%2Fconsole.huaweicloud.com%2Fswr%2F%3Fregion%3Dcn-south-1%26cloud_route_state%3D%2Fapp%2Fwarehouse%2FwarehouseMangeDetail%2Fgoldensir%2Fopenharmony-docker%2Fopenharmony-docker%3Ftype%3DownImage&locale=en-us#/login). Using the Docker image will help simplify environment configurations needed for the building. After configuring the development environments, perform the procedures below to access the Docker environment. Both Ubuntu and Windows are supported. The following procedures use Ubuntu as an example. +The Docker image of OpenHarmony is hosted on [HUAWEI CLOUD SWR](https://console.huaweicloud.com/swr/?region=cn-south-1&locale=en-us#/app/warehouse/warehouseMangeDetail/goldensir/openharmony-docker/openharmony-docker?type=ownImage). Using the Docker image will help simplify environment configurations needed for the building. After configuring the development environments, perform the procedures below to access the Docker environment. Both Ubuntu and Windows are supported. The following procedures use Ubuntu as an example. ### Setting Up the Docker Environment for Mini-System Devices \(reference memory ≥ 128 KB\) and Small-System Devices \(reference memory ≥ 1 MB\) -**Method 1: Obtaining the Docker image from HuaweiCloud SWR** +**Method 1: Obtaining the Docker image from HUAWEI CLOUD SWR** 1. Obtain the Docker image. ``` - docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.3 + docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 ``` 2. Go to the root directory of OpenHarmony code and run the following command to access the Docker build environment: ``` - docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.3 + docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 ``` @@ -171,7 +170,7 @@ The Docker image of OpenHarmony is hosted on [HUAWEI Cloud SWR](https://auth.hu 3. Go to the root directory of OpenHarmony code and run the following command to access the Docker build environment: ``` - docker run -it -v $(pwd):/home/openharmony openharmony-docker:0.0.3 + docker run -it -v $(pwd):/home/openharmony openharmony-docker:0.0.5 ``` @@ -211,7 +210,7 @@ hb set ### Setting Up the Docker Environment for Standard-System Devices \(reference memory ≥ 128 MB\) -**Method 1: Obtaining the Docker image from HuaweiCloud SWR** +**Method 1: Obtaining the Docker image from HUAWEI CLOUD SWR** 1. Obtain the Docker image. @@ -274,6 +273,10 @@ hb set HUAWEI DevEco Device Tool is a one-stop integrated development environment \(IDE\) provided to develop applications for OpenHarmony-based smart devices. It allows on-demand customization of OpenHarmony components, code editing, compilation, burning, and debugging, and supports C and C++ languages. This tool is installed in Visual Studio Code as a plug-in. For details, see [Tool Acquisition](https://device.harmonyos.com/en/ide) and [HUAWEI DevEco Device Tool User Guide](https://device.harmonyos.com/en/docs/ide/user-guides/service_introduction-0000001050166905). +The roadmap of Huawei DevEco Device Tool for supporting OpenHarmony device development is shown in the figure below. + +![](figures/3.png) + ## Acquiring the Application Development Tool \(HUAWEI DevEco Studio\) HUAWEI DevEco Studio \(DevEco Studio for short\) is a one-stop IDE oriented to Huawei devices in all scenarios. It provides E2E OpenHarmony application development services, ranging from project template creation to development, compilation, debugging, and release. With DevEco Studio, you will be able to efficiently develop OpenHarmony applications with distributed capabilities while speeding up innovation. For details, see [Tool Acquisition](https://developer.harmonyos.com/en/develop/deveco-studio) and [HUAWEI DevEco Studio User Guide](https://developer.harmonyos.com/en/docs/documentation/doc-guides/tools_overview-0000001053582387). diff --git a/en/release-notes/OpenHarmony-1-1-1-LTS.md b/en/release-notes/OpenHarmony-1-1-1-LTS.md new file mode 100644 index 0000000000000000000000000000000000000000..af806fe661e5d94d1d398afe9c57198022a74a96 --- /dev/null +++ b/en/release-notes/OpenHarmony-1-1-1-LTS.md @@ -0,0 +1,149 @@ +# OpenHarmony 1.1.1 LTS \(2021-06-22\) + +- [Version Description](#section1846294912228) +- [Source Code Acquisition](#section84808293211) + - [Acquiring Source Code from Image Sites](#section8394142222113) + - [Acquiring Source Code Using the repo Tool](#section7180193542317) + +- [What's New](#section175225345334) + +## Version Description + +This is an updated long-term support \(LTS\) version of OpenHarmony. It supports more functions and fixes some bugs in OpenHarmony 1.1.0. + +## Source Code Acquisition + +### Acquiring Source Code from Image Sites + +**Table 1** Sites for acquiring source code + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Source Code

+

Version

+

Site

+

SHA-256 Verification Code

+

Full code base

+

1.1.1

+

Site

+

Download

+

Hi3861 solution (binary)

+

1.1.1

+

Site

+

Download

+

Hi3518 solution (binary)

+

1.1.1

+

Site

+

Download

+

Hi3516 solution (binary)

+

1.1.1

+

Site

+

Download

+

Release Notes

+

1.1.1

+

-

+
  
+ +### Acquiring Source Code Using the repo Tool + +Run the following commands to download the source code: + +repo init -u [https://gitee.com/openharmony/manifest.git](https://gitee.com/openharmony/manifest.git) -b refs/tags/OpenHarmony-v1.1.1-LTS --no-repo-verify + +## What's New + +This version inherits all features of OpenHarmony 1.1.0, and fixes bugs and optimizes performance for different modules based on OpenHarmony 1.1.0. The following table lists the updates. + +**Table 2** Version updates + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Type

+

Description

+

wifi

+
  • Updated some standard Wi-Fi APIs.
+

bluetooth

+
  • Defined some standard Bluetooth APIs.
+

security deviceauth

+
  • Removed device authentication so callers can use bound capabilities alone.
+

security huks

+
  • Allowed L0 modules to remove device authentication from Huawei Universal Keystore Service (HUKS).
+

kernel

+
  • Fixed the bug of unavailable kernel stack backtracking of the system image built using Clang.
  • Fixed the bug of improper comparison between signed numbers and unsigned numbers during scheduling.
  • Fixed the bug of memory overwriting because setitimer does not hold the scheduler lock when periodically sending signals to the process.
  • Added adaptation to the kernel's POSIX APIs for lwIP.
  • Fixed the bug of unexpected signal execution sequence after sigsuspend in sigaction is called; fixed the bug so that the signal mask field passed by the developer is now masked during signal registration.
+

Driver

+
  • Corrected the compilation error on liteos_m.
  • Fixed MMC crashes.
+

AI

+
  • Added support for shared memory.
  • Added adaptation to the Linux kernel.
  • Disabled asynchronous call for the synchronous algorithm.
  • Added gitignore and CMakeLists.
+

Graphics

+
  • Fixed the bug that occurs when the endpoint style is enabled for circle progress.
  • Resolved issues related to the sensitivity and direction of crown rotation.
  • Added the feature of automatic alignment with the animation time for UIList.
  • Provided correct width for GetTextWidth in UILabel when LineBreakMode is set to LINE_BREAK_ELLIPSIS.
  • Added new style attributes to the Slider component.
  • Added the API for setting loops to the UITimePicker component.
  • Fixed the bug of abnormal Neon rotation and scaling display that results from optimization of fixed-point numbers.
  • Rectified the improper newline issue that occurs when a string contains multiple newlines.
  • Fixed the bug of the blurred screen of watch pointers.
+

Globalization

+
  • Added the Ed and MEd templates for data and time formatting.
+

ACE

+
  • Fixed the bug of abnormal click events on the checkbox and radio buttons.
  • Fixed JavaScript application crashes when list and if are used.
  • Normalized the styles of the <slider> component.
  • Added swiping loops for the <picker-view> component.
  • Fixed the bug of in-the-middle display of child components when align-item is set to stretch.
+
+ diff --git "a/zh-cn/device-dev/get-code/\346\272\220\347\240\201\350\216\267\345\217\226.md" "b/zh-cn/device-dev/get-code/\346\272\220\347\240\201\350\216\267\345\217\226.md" index a97c3ac5f76baa71dabb991ebb8bf928ec96dc07..538997e441bc9467ed12a3ea81bed44e8abf49d7 100755 --- "a/zh-cn/device-dev/get-code/\346\272\220\347\240\201\350\216\267\345\217\226.md" +++ "b/zh-cn/device-dev/get-code/\346\272\220\347\240\201\350\216\267\345\217\226.md" @@ -7,7 +7,7 @@ - [前提条件](#section102871547153314) - [操作步骤](#section429012478331) -- [获取方式2:从HPM(包管理器)组件式获取](#section463013147412) +- [获取方式2:从HPM获取](#section463013147412) - [适用场景](#section26661067443) - [前提条件](#section17544943123315) - [操作步骤](#section954619433333) @@ -50,7 +50,7 @@ OpenHarmony是由开放原子开源基金会(OpenAtom Foundation)孵化及 ### 前提条件 1. 注册码云gitee账号。 -2. 注册码云SSH公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4181)。 +2. 注册码云SSH公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191)。 3. 安装[git客户端](http://git-scm.com/book/zh/v2/%E8%B5%B7%E6%AD%A5-%E5%AE%89%E8%A3%85-Git)和[git-lfs](https://gitee.com/vcs-all-in-one/git-lfs?_from=gitee_search#downloading)并配置用户信息。 ``` @@ -70,73 +70,46 @@ OpenHarmony是由开放原子开源基金会(OpenAtom Foundation)孵化及 ### 操作步骤 -**获取轻量系统/小型系统源码** +**获取轻量/小型/标准系统(2.0 Canary)源码** >![](public_sys-resources/icon-note.gif) **说明:** >主干代码为开发分支,开发者可通过主干代码获取最新特性。release分支代码相对比较稳定,开发者可基于release分支代码进行商用功能开发。 - **OpenHarmony主干代码获取** - 方式一(推荐):通过repo下载 + 方式一(推荐):通过repo + ssh 下载(需注册公钥,请参考[码云帮助中心](https://gitee.com/help/articles/4191))。 ``` - repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify + repo init -u git@gitee.com:openharmony/manifest.git -b master --no-repo-verify repo sync -c repo forall -c 'git lfs pull' ``` - 方式二:通过git clone单个代码仓库 - - 进入[代码仓库主页](https://gitee.com/openharmony),选择需要克隆的代码仓库,执行命令,如: - - ``` - git clone https://gitee.com/openharmony/manifest.git -b master - ``` - - -- **OpenHarmony release 分支代码获取** - - 通过repo下载 + 方式二:通过repo + https 下载。 ``` - repo init -u https://gitee.com/openharmony/manifest.git -b OpenHarmony_1.0.1_release --no-repo-verify - repo sync -c + repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify + repo sync -c repo forall -c 'git lfs pull' ``` -- **OpenHarmony** 其他版本源码获取方式请参考版本[Release-Notes](https://gitee.com/openharmony/docs/blob/master/zh-cn/release-notes/OpenHarmony-Release-Notes.md)。 -**获取标准系统源码(2.0 Canary)** +- **OpenHarmony release 分支最新代码获取** -1. 创建并切换到OpenHarmony工作目录。 + >![](public_sys-resources/icon-note.gif) **说明:** + >当前通过release分支只能获取轻量和小型系统源码。 - ``` - mkdir OpenHarmony - cd OpenHarmony - ``` - -2. repo初始化。 - - ``` - repo init -u https://gitee.com/openharmony/manifest.git -b master --no-repo-verify - # 使用此命令初始化时,可能会因为网络慢的问题导致代码更新失败,可以尝试以下命令来初始化: - repo init -u https://gitee.com/openharmony/manifest.git -b ssh/master --no-repo-verify - ``` - -3. 更新代码。 - - ``` - repo sync -c - ``` - -4. 更新二进制。 + 通过repo下载。 ``` + repo init -u https://gitee.com/openharmony/manifest.git -b OpenHarmony_1.0.1_release --no-repo-verify + repo sync -c repo forall -c 'git lfs pull' ``` +- **OpenHarmony** 其他版本源码获取方式请参考版本[Release-Notes](https://gitee.com/openharmony/docs/blob/master/zh-cn/release-notes/OpenHarmony-Release-Notes.md)。 -## 获取方式2:从HPM(包管理器)组件式获取 +## 获取方式2:从HPM获取 ### 适用场景 @@ -238,45 +211,45 @@ OpenHarmony是由开放原子开源基金会(OpenAtom Foundation)孵化及

全量代码(轻量和小型系统)

-

1.1.0

+

1.1.1

-

站点

+

站点

-

SHA256 校验码

+

SHA256 校验码

Hi3861解决方案(二进制)

-

1.1.0

+

1.1.1

-

站点

+

站点

-

SHA256 校验码

+

SHA256 校验码

Hi3518解决方案(二进制)

-

1.1.0

+

1.1.1

站点

-

SHA256 校验码

+

SHA256 校验码

Hi3516解决方案(二进制)

-

1.1.0

+

1.1.1

-

站点

+

站点

-

SHA256 校验码

+

SHA256 校验码

RELEASE-NOTES

-

1.1.0

+

1.1.1

-

站点

+

站点

-

diff --git "a/zh-cn/device-dev/get-code/\350\216\267\345\217\226\345\267\245\345\205\267.md" "b/zh-cn/device-dev/get-code/\350\216\267\345\217\226\345\267\245\345\205\267.md" index a67fe6edb6964fd1122e03fab1d1efe1a0075d7f..13556b48039b7b1149c2be8113f886d20729fb04 100755 --- "a/zh-cn/device-dev/get-code/\350\216\267\345\217\226\345\267\245\345\205\267.md" +++ "b/zh-cn/device-dev/get-code/\350\216\267\345\217\226\345\267\245\345\205\267.md" @@ -36,7 +36,7 @@ OpenHarmony为开发者提供了两种Docker环境,以帮助开发者快速完

swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker

-

0.0.4

+

0.0.5

已经预安装OpenHarmony版本的编译环境,支持轻量系统类设备(参考内存≥128KB)小型系统类设备(参考内存≥1MB)的版本构建。

@@ -123,7 +123,7 @@ docker\_dist是一个[HPM](https://hpm.harmonyos.com/)系统中的模板组件 ``` # 拉取镜像 - docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.4# linux环境下的编译 + docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.3# linux环境下的编译 hpm run distWithDocker solution={product} # windows下的编译,需要配置gitbash hpm config set shellPath "gitbash路径" @@ -142,13 +142,13 @@ OpenHarmony的Docker镜像托管在[HuaweiCloud SWR](https://console.huaweicloud 1. 获取Docker镜像。 ``` - docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.4 + docker pull swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 ``` 2. 进入OpenHarmony代码根目录执行如下命令,从而进入Docker构建环境。 ``` - docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.4 + docker run -it -v $(pwd):/home/openharmony swr.cn-south-1.myhuaweicloud.com/openharmony-docker/openharmony-docker:0.0.5 ``` @@ -170,7 +170,7 @@ OpenHarmony的Docker镜像托管在[HuaweiCloud SWR](https://console.huaweicloud 3. 进入OpenHarmony代码根目录执行如下命令,从而进入Docker构建环境。 ``` - docker run -it -v $(pwd):/home/openharmony openharmony-docker:0.0.4 + docker run -it -v $(pwd):/home/openharmony openharmony-docker:0.0.5 ``` diff --git a/zh-cn/release-notes/OpenHarmony-1-1-1-LTS.md b/zh-cn/release-notes/OpenHarmony-1-1-1-LTS.md new file mode 100644 index 0000000000000000000000000000000000000000..7406ec8ea3ff5e983c3fdcd3bc2f45183643ac25 --- /dev/null +++ b/zh-cn/release-notes/OpenHarmony-1-1-1-LTS.md @@ -0,0 +1,150 @@ +# OpenHarmony 1.1.1 LTS(2021-06-22) + +- [版本概述](#section1846294912228) +- [源码获取](#section84808293211) + - [通过镜像站点获取](#section8394142222113) + - [通过repo下载](#section7180193542317) + +- [更新说明](#section175225345334) + +## 版本概述 + +更新发布LTS(long-term support)长期支持版本OpenHarmony 1.1.1,本版本在1.1.0版本的基础上新增了部分功能和修复了部分缺陷。 + +## 源码获取 + +### 通过镜像站点获取 + +**表 1** 源码获取路径 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

版本源码

+

版本信息

+

下载站点

+

SHA256校验码

+

全量代码

+

1.1.1

+

站点

+

SHA256校验码

+

Hi3861解决方案(二进制)

+

1.1.1

+

站点

+

SHA256校验码

+

Hi3518解决方案(二进制)

+

1.1.1

+

站点

+

SHA256校验码

+

Hi3516解决方案(二进制)

+

1.1.1

+

站点

+

SHA256校验码

+

Release Notes

+

1.1.1

+

-

+

-

+
+ +### 通过repo下载 + +下载命令如下: + +repo init -u [https://gitee.com/openharmony/manifest.git](https://gitee.com/openharmony/manifest.git) -b refs/tags/OpenHarmony-v1.1.1-LTS --no-repo-verify + +## 更新说明 + +本版本完全继承了OpenHarmony 1.1.0的所有特性,并在OpenHarmony 1.1.0版本的基础上,对各模块进行了缺陷修复和性能优化,详情请参考下表。 + +**表 2** 版本更新说明 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

类别

+

更新内容

+

wifi

+
  • 更新了wifi的部分标准接口
+

bluetooth

+
  • 定义蓝牙的部分标准接口
+

security deviceauth

+
  • 支持调用方仅使用绑定的能力,裁剪设备认证能力。
+

security huks

+
  • 支持L0模组的huks裁剪设备认证
+

kernel

+
  • 修复clang编译的系统镜像内核栈回溯功能失效
  • 解决调度中存在有符号数与无符号数比较
  • 修复setitimer中定时给进程发信号时未持有调度锁,导致踩内存等问题
  • lwip适配内核posix接口
  • 修复sigaction中sigsuspend的后执行信号顺序与预期不符,信号注册时未屏蔽用户传入信号屏蔽字段
+

驱动

+
  • liteos_m上的编译错误修复
  • 合入解决mmc crash的问题
+

AI子系统

+
  • AI子系统添加共享内存机制
  • AI子系统添加linux内核适配
  • 同步算法禁用异步调用
  • 添加gitignore和Cmakelist
+

图形

+
  • 修复circle progress开启端点样式情况下,进度为0,圆形端点需要绘制问题
  • 修改旋转表冠灵敏度及方向相关问题
  • 增加 UIList 自动对齐动画时间设置功能
  • 修复当LineBreakMode为LINE_BRAK_ELLIPSIS时UILabel GetText宽度值错误
  • slider组件新增样式属性
  • UITimePicker增加设置循环接口
  • 修复定点数优化导致的NEON旋转缩放变换显示异常的BUG
  • 修复换行算法在字符串中有多个换行符时存在的换行错误
  • 修复表盘指针显示花屏问题
+

全球化

+
  • 添加日期时间模板Ed和MEd
+

ACE

+
  • 修复checkbox/radio点击事件异常
  • 修复list和if指令场景JS应用crash问题
  • slider样式归一处理
  • pickerview组件支持循环滑动
  • 修改align-item设置值为stretch情况下,子项居中显示的问题
+
+