“d7ee239f7a0e5a270bb3663b43fe464ab85698b7”上不存在“...gserver/git@gitcode.net:s920243400/PaddleDetection.git”
提交 e6e8496f 编写于 作者: G Gloria

Update docs against master issues

Signed-off-by: wusongqing<wusongqing@huawei.com>
上级 89884dbd
...@@ -162,7 +162,7 @@ Go to the local installation path, choose **toolchains > 3.x.x.x** (the folder n ...@@ -162,7 +162,7 @@ Go to the local installation path, choose **toolchains > 3.x.x.x** (the folder n
If the executable file does not exist, download the SDK package from the mirror as instructed in the [Release Notes](../../release-notes). The following uses [3.2 Beta3](../../release-notes/OpenHarmony-v3.2-beta3.md) as an example. If the executable file does not exist, download the SDK package from the mirror as instructed in the [Release Notes](../../release-notes). The following uses [3.2 Beta3](../../release-notes/OpenHarmony-v3.2-beta3.md) as an example.
For details about how to replace the SDK package, see [Full SDK Compilation Guide](../quick-start/full-sdk-compile-guide.md). For details about how to replace the SDK package, see [Full SDK Compilation Guide](../faqs/full-sdk-compile-guide.md).
After obtaining the executable file, perform subsequent development steps based on your scenario. After obtaining the executable file, perform subsequent development steps based on your scenario.
......
...@@ -2,9 +2,9 @@ ...@@ -2,9 +2,9 @@
- [Full SDK Compilation](full-sdk-compile-guide.md) - [Full SDK Compilation](full-sdk-compile-guide.md)
- [Switching to Full SDK](full-sdk-switch-guide.md) - [Switching to Full SDK](full-sdk-switch-guide.md)
- [Ability Development](faqs-ability.md) - [Application Model Development](faqs-ability.md)
- [ArkUI Development](faqs-arkui.md) - ArkUI Framework Development (ArkTS)
- [ArkUI Development (ArkTS Syntax)](faqs-arkui-arkts.md) - [ArkUI Development (ArkTS Syntax)](faqs-arkui-arkts.md)
- [Web Development](faqs-arkui-web.md) - [Web Development](faqs-arkui-web.md)
- [Bundle Management Development](faqs-bundle-management.md) - [Bundle Management Development](faqs-bundle-management.md)
- [Resource Manager Development](faqs-globalization.md) - [Resource Manager Development](faqs-globalization.md)
......
# Ability Development # Application Model Development
## How do I obtain a notification when the device orientation changes? ## How do I obtain a notification when the device orientation changes?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -14,7 +14,7 @@ Use the **UIAbility.onConfigurationUpdate\(\)** callback to subscribe to system ...@@ -14,7 +14,7 @@ Use the **UIAbility.onConfigurationUpdate\(\)** callback to subscribe to system
## How do I redirect a user to a specified page after they touch a service widget? ## How do I redirect a user to a specified page after they touch a service widget?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -42,7 +42,7 @@ Create a background task to provide the background service. ...@@ -42,7 +42,7 @@ Create a background task to provide the background service.
## Can I create a UIAbility and specify the process to run the UIAbility in the FA and Stage models? ## Can I create a UIAbility and specify the process to run the UIAbility in the FA and Stage models?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -59,7 +59,7 @@ Yes. ...@@ -59,7 +59,7 @@ Yes.
## What are the differences between the stage model and the FA model in intra-process object sharing? ## What are the differences between the stage model and the FA model in intra-process object sharing?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -72,7 +72,7 @@ Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) ...@@ -72,7 +72,7 @@ Applicable to: OpenHarmony 3.2 Beta 5 (API version 9)
## How do I use the lifecycle functions of AbilityStage? ## How do I use the lifecycle functions of AbilityStage?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -85,7 +85,7 @@ Add the field **"srcEntry": "./ets/myabilitystage/MyAbilityStage.ts"** under **m ...@@ -85,7 +85,7 @@ Add the field **"srcEntry": "./ets/myabilitystage/MyAbilityStage.ts"** under **m
## How do I delete the mission snapshot in Recents after terminateself is called in the multiton scenario? ## How do I delete the mission snapshot in Recents after terminateself is called in the multiton scenario?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -93,7 +93,7 @@ You can set **removeMissionAfterTerminate** to **true** in the **module.json5** ...@@ -93,7 +93,7 @@ You can set **removeMissionAfterTerminate** to **true** in the **module.json5**
## Why can't I start a UIAbility instance by using startAbility\(\)? ## Why can't I start a UIAbility instance by using startAbility\(\)?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -102,7 +102,7 @@ Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) ...@@ -102,7 +102,7 @@ Applicable to: OpenHarmony 3.2 Beta 5 (API version 9)
## How do I prevent "this" in a method from changing to "undefined" when the method is called? ## How do I prevent "this" in a method from changing to "undefined" when the method is called?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -112,7 +112,7 @@ Method 2: Use the arrow function. ...@@ -112,7 +112,7 @@ Method 2: Use the arrow function.
## What should I do when the error message "must have required property 'startWindowIcon'" is displayed during the UIAbility startup? ## What should I do when the error message "must have required property 'startWindowIcon'" is displayed during the UIAbility startup?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -135,11 +135,11 @@ Configure the **startWindowIcon** attribute under **abilities** in the **module. ...@@ -135,11 +135,11 @@ Configure the **startWindowIcon** attribute under **abilities** in the **module.
**Reference** **Reference**
[module.json5 Configuration File](../quick-start/module-configuration-file.md) [module.json5 File](../quick-start/module-configuration-file.md)
## Can I obtain the context through globalThis in the stage model? ## Can I obtain the context through globalThis in the stage model?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
Do not use **globalThis** to obtain the context in the stage model. Do not use **globalThis** to obtain the context in the stage model.
...@@ -151,7 +151,7 @@ This is because all the processes of an application share a JS VM instance in th ...@@ -151,7 +151,7 @@ This is because all the processes of an application share a JS VM instance in th
## What should I do when an error indicating too large size is reported during HAP deployment? ## What should I do when an error indicating too large size is reported during HAP deployment?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Symptom** **Symptom**
...@@ -165,11 +165,11 @@ You can split the HAP into multiple HAPs. ...@@ -165,11 +165,11 @@ You can split the HAP into multiple HAPs.
## How is data returned when startAbilityForResult is called? ## How is data returned when startAbilityForResult is called?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
The target UIAbilities uses **AbilityContext.terminateSelfWithResult** to terminate itselef and pass the result to **startAbilityForResult**. The target UIAbilities uses **AbilityContext.terminateSelfWithResult** to terminate itself and pass the result to **startAbilityForResult**.
**Reference** **Reference**
...@@ -178,7 +178,7 @@ The target UIAbilities uses **AbilityContext.terminateSelfWithResult** to termin ...@@ -178,7 +178,7 @@ The target UIAbilities uses **AbilityContext.terminateSelfWithResult** to termin
## How do I obtain the system timestamp? ## How do I obtain the system timestamp?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -209,7 +209,7 @@ Use the **@ohos.systemDateTime** API as follows: ...@@ -209,7 +209,7 @@ Use the **@ohos.systemDateTime** API as follows:
## How do I obtain the cache directory of the current application? ## How do I obtain the cache directory of the current application?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -221,7 +221,7 @@ Use **Context.cacheDir** to obtain the cache directory of the application. ...@@ -221,7 +221,7 @@ Use **Context.cacheDir** to obtain the cache directory of the application.
## In which JS file is the service widget lifecycle callback invoked? ## In which JS file is the service widget lifecycle callback invoked?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -233,7 +233,7 @@ When a widget is created, a **FormAblity.ts** file is generated, which contains ...@@ -233,7 +233,7 @@ When a widget is created, a **FormAblity.ts** file is generated, which contains
## What should I do when the compilation on DevEco Studio fails while ServiceExtensionAbility and DataShareExtensionAbility APIs are used? ## What should I do when the compilation on DevEco Studio fails while ServiceExtensionAbility and DataShareExtensionAbility APIs are used?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Symptom** **Symptom**
...@@ -250,7 +250,7 @@ The SDK downloaded using DevEco Studio is the public SDK. ...@@ -250,7 +250,7 @@ The SDK downloaded using DevEco Studio is the public SDK.
**Solution** **Solution**
Third-party application cannot use **ServiceExtensionAbility** and **DataShareExtensionAbility**. To develop a system application, first [download the full SDK](../quick-start/full-sdk-switch-guide.md). Third-party application cannot use **ServiceExtensionAbility** and **DataShareExtensionAbility**. To develop a system application, first [download the full SDK](../faqs/full-sdk-switch-guide.md).
## How do I obtain the temp and files paths at the application level? ## How do I obtain the temp and files paths at the application level?
...@@ -264,18 +264,99 @@ Obtain them from the application context. Specifically, use **this.context.getAp ...@@ -264,18 +264,99 @@ Obtain them from the application context. Specifically, use **this.context.getAp
[Obtaining the Application Development Path](../application-models/application-context-stage.md#obtaining-the-application-development-path) [Obtaining the Application Development Path](../application-models/application-context-stage.md#obtaining-the-application-development-path)
## Why the application is not deleted from the background mission list after it calls terminateSelf?
Applicable to: OpenHarmony 3.2 Beta5
**Solution**
This is because the **removeMissionAfterTerminate** field under **abilities** in the **module.json5** file of the UIAbility is set to **false** (default value). To enable the application snapshot to be automatically deleted when the application is destroyed, set this field to **true**.
**Reference**
[module.json5 File](../quick-start/module-configuration-file.md)
## How does an application developed in the stage model start an application developed in the FA model?
Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution**
Refer to the code snippet below:
```
let want = {
deviceId: "", // An empty deviceId indicates the local device.
bundleName: "com.example.myapplication",
abilityName: "EntryAbility",
moduleName: "Module1", // moduleName is optional.
parameters: { // Custom information.
},
}
// context is the AbilityContext of the FA model to be started.
context.startAbility(want).then(() => {
...
}).catch((err) => {
...
})
```
## Can atomic services be implemented using JavaScript code only?
Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution**
Currently, the directory structure of new widgets is css+hml+json. This means that the widgets cannot be implemented by using JavaScript code only. Event triggering and parameter transfer can be processed in JSON files.
## Can the lifecycle callback of a released FA widget be triggered when the widget is displayed in the service center so that the user login information can be obtained without opening the FA application? ## Can the lifecycle callback of a released FA widget be triggered when the widget is displayed in the service center so that the user login information can be obtained without opening the FA application?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
After a widget is added, the **onCreate()** lifecycle is triggered so that related user information (silent login) can be displayed even when the application is not started. However, users must manually add the widget after the application is installed. After a widget is added, the **onCreate\(\)** lifecycle is triggered so that related user information (silent login) can be displayed even when the application is not started. However, users must manually add the widget after the application is installed.
## What should I do when the error message "\[c4d4d3492eb8531, 0, 0\] ContextDeal::startAbility fetchAbilities failed" is displayed during switching to another application?
Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Symptom**
The **startAbility** API reports an error during redirection.
**Solution**
Use **startAbility** for implementation as follows:
```
import featureAbility from '@ohos.ability.featureAbility'
function onStartRemoteAbility() {
console.info('onStartRemoteAbility begin');
let params;
let wantValue = {
bundleName: 'ohos.samples.etsDemo',
abilityName: 'ohos.samples.etsDemo.RemoteAbility',
deviceId: getRemoteDeviceId(),
parameters: params
};
console.info('onStartRemoteAbility want=' + JSON.stringify(wantValue));
featureAbility.startAbility({
want: wantValue
}).then((data) => {
console.info('onStartRemoteAbility finished, ' + JSON.stringify(data));
});
console.info('onStartRemoteAbility end');
}
```
**Reference**
See [Starting a Local PageAbility] (../application-models/start-local-pageability.md).
## How do I implement service login by touching a widget? ## How do I implement service login by touching a widget?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -299,7 +380,7 @@ To create a service widget in the FA model, perform the following steps: ...@@ -299,7 +380,7 @@ To create a service widget in the FA model, perform the following steps:
## How do I redirect to the application details page in Settings? ## How do I redirect to the application details page in Settings?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -319,35 +400,33 @@ Applicable to: OpenHarmony 3.2 Beta5 (API version 9) ...@@ -319,35 +400,33 @@ Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
You can use **UIAbility.Context** to obtain the context. You can use **UIAbility.Context** to obtain the context.
**Example** **Example**
``` ```
import UIAbility from '@ohos.app.ability.UIAbility'; import common from '@ohos.app.ability.common';
let UIAbilityContext = UIAbility.context;
let ApplicationContext = UIAbility.context.getApplicationContext();
@Entry @Entry
@Component @Component
struct AbilityContextTest { struct AbilityContextTest {
// abilityContext // abilityContext
@State UIabilityInfo: string = 'Obtaining abilityInfo' @State UIAbilityInfo: string = 'Obtaining abilityInfo'
UIabilityContext: UIAbilityContext UIAbilityContext: common.UIAbilityContext
aboutToAppear() { aboutToAppear() {
// Use getContext to obtain the context and convert it to abilityContext. // Use getContext to obtain the context and convert it to abilityContext.
this.UIabilityContext = getContext(this) as UIAbilityContext this.UIAbilityContext = getContext(this) as common.UIAbilityContext
} }
build() { build() {
Row() { Row() {
Column({ space: 20 }) { Column({ space: 20 }) {
Text(this.abilityInfo) Text(this.UIAbilityInfo)
.fontSize(20) .fontSize(20)
.onClick(()=>{ .onClick(() => {
this.UIabilityInfo = JSON.stringify(this.UIabilityContext.UIabilityInfo) this.UIAbilityInfo = JSON.stringify(this.UIAbilityContext.abilityInfo)
console.log(`ContextDemo abilityInfo= ${this.UIabilityInfo}`) console.log(`ContextDemo abilityInfo = ${this.UIAbilityInfo}`)
}) })
} }
.width('100%') .width('100%')
...@@ -356,3 +435,51 @@ struct AbilityContextTest { ...@@ -356,3 +435,51 @@ struct AbilityContextTest {
} }
} }
``` ```
## What should I do when starting a continuous task fails?
Applicable to: OpenHarmony 3.2 Release (API version 9)
**Symptom**
A ServiceAbility is started by calling **featureAbility.startAbility\(\)**. When the ServiceAbility attempts to start a continuous task, the error message \{"code":201,"message":"BussinessError 201: Permission denied."\} is reported.
**Solution**
To start a continuous task in the background, you must configure the permission **ohos.permission.KEEP\_BACKGROUND\_RUNNING** in the **module.json5** file and declare the background mode for the ability that needs to use the continuous task.
```
"module": {
"abilities": [
{
"backgroundModes": [
"dataTransfer",
"location"
], // Background mode
}
],
"requestPermissions": [
{
"name": "ohos.permission.KEEP_BACKGROUND_RUNNING" // Continuous task permission
}
]
}
```
**Reference**
[ServiceAbility Configuration Items - backgroundModes](../application-models/serviceability-configuration.md)
[Continuous Task Permission](../security/permission-list.md#ohospermissionkeep_background_running)
[Continuous Task Development](../task-management/continuous-task-dev-guide.md#development-in-the-stage-model)
## How do FA widgets exchange data?
Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
The widget interacts with the widget provider through the **postCardAction** API, and the provider updates data through the **updateForm** API.
**Reference**
[Widget Development in the FA Model](../application-models/widget-development-fa.md)
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
## How do I determine whether an application is a system application? ## How do I determine whether an application is a system application?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -14,7 +14,7 @@ Use **bundleManager.getApplicationInfo** (available only for system applications ...@@ -14,7 +14,7 @@ Use **bundleManager.getApplicationInfo** (available only for system applications
## How do I obtain the version code and version name of an application? ## How do I obtain the version code and version name of an application?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -96,7 +96,7 @@ Applicable to: OpenHarmony 3.2 Beta5 ...@@ -96,7 +96,7 @@ Applicable to: OpenHarmony 3.2 Beta5
## How do I obtain the source file path of the current application? ## How do I obtain the source file path of the current application?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -121,6 +121,81 @@ Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) ...@@ -121,6 +121,81 @@ Applicable to: OpenHarmony 3.2 Beta 5 (API version 9)
## Can I obtain the HAP information of other applications from the current application? ## Can I obtain the HAP information of other applications from the current application?
Applicable to: OpenHarmony 3.2 (API version 9)
**Solution**
Currently, only system applications can call the API to query information about other applications.
- To query information about an application in the system, you must obtain the normal-level permission **ohos.permission.GET\_BUNDLE\_INFO** and call the **bundleManager.getApplicationInfo\(\)** API.
- To query information about all applications in the system, you must obtain the system\_basic-level permission **ohos.permission.GET\_BUNDLE\_INFO\_PRIVILEGED** and call the **bundleManager.getAllApplicationInfo\(\)** API.
**Reference**
[@ohos.bundle.bundleManager \(bundleManager\)](../reference/apis/js-apis-bundleManager.md)
## How do I query the PID of a process?
Applicable to: OpenHarmony 3.2 Beta (API version 9)
**Solution**
You can obtain the PID through the **@ohos.process** interface.
**Example**
```
import process from '@ohos.process';
private pid = process.pid;
```
**Reference**
[@ohos.process \ (Obtaining Process Information\)](../reference/apis/js-apis-process.md)
## How do I disable the maximize button?
Applicable to: OpenHarmony 3.2 Beta (API version 9) Applicable to: OpenHarmony 3.2 Beta (API version 9)
According to the OpenHarmony security design specifications, the SDK does not provide APIs for third-party applications to obtain bundle information (including but not limited to the application name and version number) of other applications. **Solution**
You can use the **supportWindowModes** field to specify whether to display the maximize button.
- **full\_screen** means that a window in full-screen mode is supported.
- **split** means that a window in split-screen mode is supported.
- **floating** means that a floating window is supported.
**Example**
```
"abilities": [
{
"name": "EntryAbility",
"srcEntry": "./ets/entryability/EntryAbility.ts",
"description": "$string:EntryAbility_desc",
"icon": "$media:icon",
"label": "$string:EntryAbility_label",
"startWindowIcon": "$media:icon",
"startWindowBackground": "$color:start_window_background",
"exported": true,
"supportWindowMode": ["split", "floating"],
"skills": [
{
"entities": [
"entity.system.home"
],
"actions": [
"action.system.home"
]
}
]
}
]
```
**Reference**
[supportWindowModes](../reference/apis/js-apis-bundleManager-abilityInfo.md)
...@@ -23,7 +23,7 @@ try { ...@@ -23,7 +23,7 @@ try {
## How do I hide the status bar to get the immersive effect? ## How do I hide the status bar to get the immersive effect?
Applicable to: OpenHarmony 3.2 Beta5 (API version 9, stage model) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -59,7 +59,7 @@ Applicable to: OpenHarmony 3.2 Beta5 (API version 9, stage model) ...@@ -59,7 +59,7 @@ Applicable to: OpenHarmony 3.2 Beta5 (API version 9, stage model)
## How do I obtain the window width and height? ## How do I obtain the window width and height?
Applicable to: OpenHarmony SDK 3.2 Beta5 (API version 9, stage model) Applicable to: OpenHarmony 3.2 Beta5 (API version 9, stage model)
**Solution** **Solution**
...@@ -90,3 +90,32 @@ try { ...@@ -90,3 +90,32 @@ try {
console.error('Failed to obtain the top window. Cause: ' + JSON.stringify(exception)); console.error('Failed to obtain the top window. Cause: ' + JSON.stringify(exception));
} }
``` ```
## How do I perform Gaussian blurring on images?
Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution**
Import the **@ohos.multimedia.image** and **@ohos.effectKit** modules to process the image and add the blur effect.
**Example**
```
import image from "@ohos.multimedia.image";
import effectKit from "@ohos.effectKit";
const color = new ArrayBuffer(96);
let opts = { editable: true, pixelFormat: 3, size: { height: 4, width: 6 } };
image.createPixelMap(color, opts).then((pixelMap) => {
let radius = 5;
let headFilter = effectKit.createEffect(pixelMap);
if (headFilter != null) {
headFilter.blur(radius);
}
})
```
**Reference**
[blur](../reference/apis/js-apis-effectKit.md#blur)
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
## How do I obtain the frame data of a camera when using the XComponent to display the preview output stream of the camera? ## How do I obtain the frame data of a camera when using the XComponent to display the preview output stream of the camera?
Applicable to: OpenHarmony 3.2 (API version 9, stage model) Applicable to: OpenHarmony 3.2 (API version 9)
**Symptom** **Symptom**
...@@ -35,7 +35,7 @@ Create a dual-channel preview to obtain the frame data. ...@@ -35,7 +35,7 @@ Create a dual-channel preview to obtain the frame data.
## How do I obtain the preview image of the front camera? ## How do I obtain the preview image of the front camera?
Applicable to: OpenHarmony 3.2 (API version 9, stage model) Applicable to: OpenHarmony 3.2 (API version 9)
**Solution** **Solution**
...@@ -76,7 +76,7 @@ Applicable to: OpenHarmony 3.2 (API version 9, stage model) ...@@ -76,7 +76,7 @@ Applicable to: OpenHarmony 3.2 (API version 9, stage model)
## How do I set the camera focal length? ## How do I set the camera focal length?
Applicable to: OpenHarmony 3.2 (API version 9, stage model) Applicable to: OpenHarmony 3.2 (API version 9)
**Solution** **Solution**
...@@ -86,7 +86,7 @@ Applicable to: OpenHarmony 3.2 (API version 9, stage model) ...@@ -86,7 +86,7 @@ Applicable to: OpenHarmony 3.2 (API version 9, stage model)
## How do I play music in the background? ## How do I play music in the background?
Applicable to: OpenHarmony 3.2 (API version 9, stage model) Applicable to: OpenHarmony 3.2 (API version 9)
**Symptom** **Symptom**
...@@ -105,7 +105,7 @@ Music cannot be played in the background. ...@@ -105,7 +105,7 @@ Music cannot be played in the background.
## What should I do when multiple video components cannot be used for playback? ## What should I do when multiple video components cannot be used for playback?
Applicable to: OpenHarmony 3.2 (API version 9, stage model) Applicable to: OpenHarmony 3.2 (API version 9)
**Symptom** **Symptom**
...@@ -115,10 +115,9 @@ A large number of video components are created. They cannot play media normally ...@@ -115,10 +115,9 @@ A large number of video components are created. They cannot play media normally
A maximum of 13 media player instances can be created. A maximum of 13 media player instances can be created.
## How do I invoke the image library directly? ## How do I invoke the image library directly?
Applicable to: OpenHarmony 3.2 (API version 9, stage model) Applicable to: OpenHarmony 3.2 (API version 9)
**Solution** **Solution**
...@@ -133,3 +132,69 @@ let want = { ...@@ -133,3 +132,69 @@ let want = {
let context = getContext(this) as common.UIAbilityContext; let context = getContext(this) as common.UIAbilityContext;
context.startAbility(want); context.startAbility(want);
``` ```
## How do I apply for the media read/write permission on a device?
Applicable to: OpenHarmony 3.2 (API version 9, stage model)
**Solution**
1. Configure the permissions **ohos.permission.READ\_MEDIA** and **ohos.permission.WRITE\_MEDIA** in the **module.json5** file.
Example:
```
{
"module" : {
"requestPermissions":[
{
"name" : "ohos.permission.READ_MEDIA",
"reason": "$string:reason"
},
{
"name" : "ohos.permission.WRITE_MEDIA",
"reason": "$string:reason"
}
]
}
}
```
2. Call **requestPermissionsFromUser** to request the permissions from end users in the form of a dialog box. This operation is required because the grant mode of both permissions is **user\_grant**.
```
let context = getContext(this) as common.UIAbilityContext;
let atManager = abilityAccessCtrl.createAtManager();
let permissions: Array<string> = ['ohos.permission.READ_MEDIA','ohos.permission.WRITE_MEDIA']
atManager.requestPermissionsFromUser(context, permissions)
.then((data) => {
console.log("Succeed to request permission from user with data: " + JSON.stringify(data))
}).catch((error) => {
console.log("Failed to request permission from user with error: " + JSON.stringify(error))
})
```
## How do I obtain the camera status?
Applicable to: OpenHarmony 3.2 (API version 9, stage model)
**Solution**
The **cameraManager** class provides a listener to subscribe to the camera status.
```
cameraManager.on('cameraStatus', (cameraStatusInfo) => {
console.log(`camera : ${cameraStatusInfo.camera.cameraId}`);
console.log(`status: ${cameraStatusInfo.status}`);
})
```
CameraStatus: Enumerates the camera statuses.
- **CAMERA_STATUS_APPEAR** (0): A camera appears.
- **CAMERA_STATUS_DISAPPEAR** (1): The camera disappears.
- **CAMERA_STATUS_AVAILABLE** (2): The camera is available.
- **CAMERA_STATUS_UNAVAILABLE** (3): The camera is unavailable.
**Reference**
[CameraStatus](../reference/apis/js-apis-camera.md#oncamerastatus)
\ No newline at end of file
...@@ -2,6 +2,24 @@ ...@@ -2,6 +2,24 @@
## Are the APIs used for obtaining PPG and ECG sensor data open to individual developers? ## Are the APIs used for obtaining PPG and ECG sensor data open to individual developers?
Applicable to: OpenHarmony 3.1 Beta 5 (API version 9) Applicable to: OpenHarmony 3.1 Beta5 (API version 9)
Data collected by the PPG and ECG sensors of wearable devices is personal privacy data. Therefore, relative APIs are not open to individual developers. Data collected by the PPG and ECG sensors of wearable devices is personal privacy data. Therefore, relative APIs are not open to individual developers.
## What should I do when error code 201 is reported during the calling of a vibrator API?
Applicable to: OpenHarmony 3.2 (API version 9, stage model)
**Symptom**
The following error message (error code 201) is reported when an API of the vibrator module is called:
vibrate fail, error.code: 201error.message: NaN
**Solution**
Permission verification failed. You must apply for the **ohos.permission.VIBRATE** permission.
**Reference**
[Applying for Permissions](../security/accesstoken-guidelines.md)
\ No newline at end of file
...@@ -2,19 +2,19 @@ ...@@ -2,19 +2,19 @@
## How do I obtain available third-party libraries? ## How do I obtain available third-party libraries?
Applicable to: OpenHarmony 3.1 Beta 5 (API version 9) Applicable to: OpenHarmony 3.1 Beta5 (API version 9)
The three-party and four-party libraries that can be obtained through ohpm are summarized in the [OpenHarmony-TPC/tpc_resource repository](https://gitee.com/openharmony-tpc/tpc_resource). You can access this repository, and find the desired component based on the directory index. The three-party and four-party libraries that can be obtained through ohpm are summarized in the [OpenHarmony-TPC/tpc_resource repository](https://gitee.com/openharmony-tpc/tpc_resource). You can access this repository, and find the desired component based on the directory index.
## Which third-party libraries are related to network requests? ## Which third-party libraries are related to network requests?
Applicable to: OpenHarmony 3.1 Beta 5 (API version 9) Applicable to: OpenHarmony 3.1 Beta5 (API version 9)
The following third-party libraries are related to network requests: [Axios](https://gitee.com/openharmony-sig/axios), httpclient, and okdownload. For details, see the [OpenHarmony-TPC/tpc_resource repository](https://gitee.com/openharmony-tpc/tpc_resource). The following third-party libraries are related to network requests: [Axios](https://gitee.com/openharmony-sig/axios), httpclient, and okdownload. For details, see the [OpenHarmony-TPC/tpc_resource repository](https://gitee.com/openharmony-tpc/tpc_resource).
## How do I use ohpm to import third- and fourth-party libraries? ## How do I use ohpm to import third- and fourth-party libraries?
Applicable to: OpenHarmony 3.1 Beta 5 (API version 9) Applicable to: OpenHarmony 3.1 Beta5 (API version 9)
**Solution** **Solution**
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
## How do I obtain the height of the status bar and navigation bar? ## How do I obtain the height of the status bar and navigation bar?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -44,7 +44,7 @@ export default class MainAbility extends Ability { ...@@ -44,7 +44,7 @@ export default class MainAbility extends Ability {
## How do I hide the status bar on the top of an application? ## How do I hide the status bar on the top of an application?
Applicable to: OpenHarmony 3.2 Beta 5 (API version 9) Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution** **Solution**
...@@ -62,3 +62,101 @@ onWindowStageCreate(windowStage){ ...@@ -62,3 +62,101 @@ onWindowStageCreate(windowStage){
**Reference** **Reference**
[Window](../reference/apis/js-apis-window.md) [Window](../reference/apis/js-apis-window.md)
## How do I lock the window in portrait mode so that it does not rotate with the device?
Applicable to: OpenHarmony SDK 3.2 Beta5 (API version 9, stage model)
**Solution**
To lock the window in portrait mode, call **setPreferredOrientation** of the window module, with **orientation** set to **window.Orientation.PORTRAIT**.
**Example**
```
import window from "@ohos.window";
// 1. Obtain a Window instance. Specifically, you can call createWindow to create a window or findWindow to obtain an existing window.
let windowClass = null;
let config = {name: "alertWindow", windowType: window.WindowType.TYPE_SYSTEM_ALERT, ctx: this.context};
try {
let promise = window.createWindow(config);
promise.then((data)=> {
windowClass = data;
console.info('Succeeded in creating the window. Data:' + JSON.stringify(data));
}).catch((err)=>{
console.error('Failed to create the Window. Cause:' + JSON.stringify(err));
});} catch (exception) {
console.error('Failed to create the window. Cause: ' + JSON.stringify(exception));
}
// 2. Call setPreferredOrientation to set the window orientation. The value PROTRAIT indicates that the window is displayed in portrait mode.
let orientation = window.Orientation.PORTRAIT;
if (windowClass) {
windowClass.setPreferredOrientation(orientation, (err) => {
if (err.code) {
console.error('Failed to set window orientation. Cause: ' + JSON.stringify(err));
return;
}
console.info('Succeeded in setting window orientation.');
}
```
**Reference**
[window.Orientation](../reference/apis/js-apis-window.md#orientation9)
## Why do the isStatusBarLightIcon and isNavigationBarLightIcon attributes set by calling setWindowSystemBarProperties not take effect?
Applicable to: OpenHarmony SDK 3.2 Beta5 (API version 9, stage model)
**Solution**
In effect, the **isStatusBarLightIcon** and **isNavigationBarLightIcon** attributes turn the font white when set to **true**. If **statusBarContentColor** is also set in **setWindowSystemBarProperties**, the **isStatusBarLightIcon** attribute does not take effect. Similarly, if **navigationBarContentColor** is set, the **isNavigationBarLightIcon** attribute does not take effect.
**Reference**
[window.SystemBarProperties](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-window.md#systembarproperties)
## How do I keep the screen always on?
Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution**
Obtain a **Window** instance, and call [setWindowKeepScreenOn](../reference/apis/js-apis-window.md#setwindowkeepscreenon9) to keep the screen always on.
```
let isKeepScreenOn = true;
try {
windowClass.setWindowKeepScreenOn(isKeepScreenOn, (err) => {
if (err.code) {
console.error('Failed to set the screen to be always on. Cause: ' + JSON.stringify(err));
return;
}
console.info('Succeeded in setting the screen to be always on.');
});
} catch (exception) {
console.error('Failed to set the screen to be always on. Cause: ' + JSON.stringify(exception));
}
```
## How do I listen for window size changes?
Applicable to: OpenHarmony 3.2 Beta5 (API version 9)
**Solution**
Obtain a **Window** instance, and call **on\('windowSizeChange'\)** to listen for window size changes.
```
try {
windowClass.on('windowSizeChange', (data) => {
console.info('Succeeded in enabling the listener for window size changes. Data: ' + JSON.stringify(data));
});
} catch (exception) {
console.error('Failed to enable the listener for window size changes. Cause: ' + JSON.stringify(exception));
}
```
**Reference**
[window.on\("windowSizeChange"\)](../reference/apis/js-apis-window.md#onwindowsizechange7)
# Native APIs # Native APIs
Native APIs are a set of native development interfaces and tools provided by the OHOS SDK. It enables the use of C or C++ code to implement key application functionalities. Native APIs provide part of basic underlying capabilities of OHOS, such as libc, graphics library, window system, multimedia, and compression library. They do not provide complete OHOS platform capabilities as JS APIs do. Native APIs are compiled into a dynamic library before being packed into the application.
## Native API Composition - [Introduction to Native APIs](introduction.md)
- [Using N-APIs in Application Projects](napi-guidelines.md)
### Native API Directory Structure
Native APIs are stored in the **$(SDK_ROOT)/native** directory of the SDK. They consist of the following parts:
|Directory|Description|
|--|--|
|build|Used to build the toolchain.cmake script of the dynamic library in the application. The **ohos.toolchain.cmake** file in this directory defines OHOS cross compilation options.|
|build-tools|Stores build tools, such as CMake.|
|docs|Stores Native API reference documents, which is extracted from the header files using Doxgen.|
|llvm|Stores LLVM, a cross compiler that supports OHOS ABIs.|
|sysroot|Stores dependent files of build links, including header files and dynamic libraries.|
### Native APIs
|Category|Function|Introduced In|
|--|--|--|
|C standard library|C standard library interfaces based on musl. Currently, more than 1500 interfaces are provided.|API version 8|
|C++ standard library|C++ runtime library libc++_shared. This library must be packed or statically linked to the application during packing.|API version 8|
|Log|HiLog interfaces for printing logs to the system|API version 8|
|napi|A group of Node-APIs provided by ArkUI to facilitate access to the JS application environment during application development. Node-APIs are part of native APIs.|API version 8|
|XComponent|Provides surface and touchscreen event interfaces for developing high-performance graphics applications.|API version 8|
|libuv|Third-party asynchronous I/O library integrated by ArkUI.|API version 8|
|libz|zlib library that provides basic compression and decompression interfaces.|API version 8|
|Drawing|2D graphics library that can be used for drawing on the surface.|API version 8|
|OpenGL|OpenGL 3.0 interfaces.|API version 8|
|Rawfile|Application resource access interfaces that can be used to read various resources packed in the application.|API version 8|
|OpenSLES|Interface library used for 2D and 3D audio acceleration.|API version 8|
|Mindspore|AI model interface library.|API version 9|
|Bundle management|Bundle service interfaces that can be used to query bundle information of the application.|API version 8|
Some native APIs use open source standards. For details, see [Native Standard Libraries Supported by OpenHarmony](https://docs.openharmony.cn/pages/v3.1/en/application-dev/reference/native-lib/third_party_libc/musl.md/) and [Node_API](https://docs.openharmony.cn/pages/v3.1/en/application-dev/reference/native-lib/third_party_napi/napi.md/).
## Usage Guidelines
### Scenarios Where Native APIs Are Recommended
You can use native APIs when you want to:
1. Develop performance-sensitive code in computing-intensive scenarios such as gaming and physical simulation.
2. Reuse the existing C or C++ library.
3. Customize libraries related to CPU features, such as neon acceleration.
### Scenarios Where Native APIs Are Not Recommended
You do not need to use native APIs when you want to:
1. Write a native OHOS application.
2. Develop an application compatible on as many OHOS devices as possible.
# Native API References
- [Native API hello world]()
This sample shows how to develop a hello native API library, which can display strings obtained from the hello library on the TS page.
- [Using Native APIs in Application Projects](napi-guidelines.md)
This document describes how to use native APIs to interact with modules, interfaces, and asynchronous tasks in JS.
- [Drawing Development](drawing-guidelines.md) - [Drawing Development](drawing-guidelines.md)
- [Raw File Development](rawfile-guidelines.md) - [Raw File Development](rawfile-guidelines.md)
- [Native Window Development](native-window-guidelines.md) - [Native Window Development](native-window-guidelines.md)
- [Using MindSpore Lite for Model Inference](mindspore-lite-guidelines.md) - [Using MindSpore Lite for Model Inference](mindspore-lite-guidelines.md)
- [Connecting the Neural Network Runtime to an AI Inference Framework](neural-network-runtime-guidelines.md) - [Connecting the Neural Network Runtime to an AI Inference Framework](neural-network-runtime-guidelines.md)
\ No newline at end of file
# Introduction to Native APIs
Native APIs are a set of native development interfaces and tools provided by the OHOS SDK. It enables the use of C or C++ code to implement key application functionalities. Native APIs provide part of basic underlying capabilities of OHOS, such as libc, graphics library, window system, multimedia, and compression library. They do not provide complete OHOS platform capabilities as JS APIs do. Native APIs are compiled into a dynamic library before being packed into the application.
## Native API Composition
### Native API Directory Structure
Native APIs are stored in the **$(SDK_ROOT)/native** directory of the SDK. They consist of the following parts:
|Directory|Description|
|--|--|
|build|Used to build the toolchain.cmake script of the dynamic library in the application. The **ohos.toolchain.cmake** file in this directory defines OHOS cross compilation options.|
|build-tools|Stores build tools, such as CMake.|
|docs|Stores Native API reference documents, which is extracted from the header files using Doxgen.|
|llvm|Stores LLVM, a cross compiler that supports OHOS ABIs.|
|sysroot|Stores dependent files of build links, including header files and dynamic libraries.|
### Native APIs
|Category|Function|Introduced In|
|--|--|--|
|C standard library|C standard library interfaces based on musl. Currently, more than 1500 interfaces are provided.|API version 8|
|C++ standard library|C++ runtime library libc++_shared. This library must be packed or statically linked to the application during packing.|API version 8|
|Log|HiLog interfaces for printing logs to the system|API version 8|
|napi|A group of Node-APIs provided by ArkUI to facilitate access to the JS application environment during application development. Node-APIs are part of native APIs.|API version 8|
|XComponent|Provides surface and touchscreen event interfaces for developing high-performance graphics applications.|API version 8|
|libuv|Third-party asynchronous I/O library integrated by ArkUI.|API version 8|
|libz|zlib library that provides basic compression and decompression interfaces.|API version 8|
|Drawing|2D graphics library that can be used for drawing on the surface.|API version 8|
|OpenGL|OpenGL 3.0 interfaces.|API version 8|
|Rawfile|Application resource access interfaces that can be used to read various resources packed in the application.|API version 8|
|OpenSLES|Interface library used for 2D and 3D audio acceleration.|API version 8|
|Mindspore|AI model interface library.|API version 9|
|Bundle management|Bundle service interfaces that can be used to query bundle information of the application.|API version 8|
Some native APIs use open-source standards. For details, see [Native Standard Libraries Supported by OpenHarmony](../reference/native-lib/third_party_libc/musl.md) and [Node-API](../reference/native-lib/third_party_napi/napi.md).
## Usage Guidelines
### Scenarios Where Native APIs Are Recommended
You can use native APIs when you want to:
1. Develop performance-sensitive code in computing-intensive scenarios such as gaming and physical simulation.
2. Reuse the existing C or C++ library.
3. Customize libraries related to CPU features, such as neon acceleration.
### Scenarios Where Native APIs Are Not Recommended<br>You do not need to use native APIs when you want to:
1. Write a native OHOS application.
2. Develop an application compatible on as many OHOS devices as possible.
...@@ -29,14 +29,14 @@ A description regarding system APIs will be provided in the document. ...@@ -29,14 +29,14 @@ A description regarding system APIs will be provided in the document.
A common application is an application whose application type is **hos_normal_app** in the HarmonyAppProvision configuration file. **hos_normal_app** is the default value for project creation. A common application is an application whose application type is **hos_normal_app** in the HarmonyAppProvision configuration file. **hos_normal_app** is the default value for project creation.
The public SDK, which does not include system APIs, is provided as standard in DevEco Studio. To use the system APIs, you must: The public SDK, which does not include system APIs, is provided as standard in DevEco Studio. To use the system APIs, you must:
- Switch the public SDK to the full SDK by following the instructions provided in [Guide to Switching to Full SDK](../../faqs/full-sdk-switch-guide.md). - Switch the public SDK to the full SDK by following the instructions provided in [Switching to Full SDK](../../faqs/full-sdk-switch-guide.md).
- Change the value of **app-feature** in the HarmonyAppProvision configuration file to **hos_system_app**. For details, see [HarmonyAppProvision Configuration File](../../security/app-provision-structure.md). - Change the value of **app-feature** in the HarmonyAppProvision configuration file to **hos_system_app** (indicating a system application). For details, see [HarmonyAppProvision Configuration File](../../security/app-provision-structure.md).
## Permission Description ## Permission Description
By default, applications can access limited system resources. However, in some cases, an application needs to access excess data (including personal data) and functions of the system or another application to implement extended functions. For details, see [Access Control (Permission) Overview](../../security/accesstoken-overview.md). By default, applications can access limited system resources. However, in some cases, an application needs to access excess data (including personal data) and functions of the system or another application to implement extended functions. For details, see [Access Control Overview](../../security/accesstoken-overview.md).
To call APIs to access these resources, you must apply for the corresponding permissions by following the instructions provided in [Applying for Permissions](../../security/accesstoken-guidelines.md). To call APIs to access these resources, you must apply for the corresponding permissions by following the instructions provided in [Access Control Development](../../security/accesstoken-guidelines.md).
- If an application can call an API only after it has obtained a specific permission, the following description is provided for the API: "**Required permissions**: ohos.permission.xxxx" - If an application can call an API only after it has obtained a specific permission, the following description is provided for the API: "**Required permissions**: ohos.permission.xxxx"
- If an application can call an API without any permission, no special description is provided. - If an application can call an API without any permission, no special description is provided.
......
# @ohos.application.EnvironmentCallback (EnvironmentCallback)
The **EnvironmentCallback** module provides APIs, such as **onConfigurationUpdated** and **onMemoryLevel**, for the application context to listen for system environment changes.
> **NOTE**
>
> The APIs of this module are supported since API version 9 and are deprecated in versions later than API version 9. You are advised to use [@ohos.app.ability.EnvironmentCallback](js-apis-app-ability-environmentCallback.md) instead. Newly added APIs will be marked with a superscript to indicate their earliest API version.
> The APIs of this module can be used only in the stage model.
## Modules to Import
```ts
import EnvironmentCallback from '@ohos.application.EnvironmentCallback';
```
## EnvironmentCallback.onConfigurationUpdated
onConfigurationUpdated(config: Configuration): void;
Called when the system environment changes.
**System capability**: SystemCapability.Ability.AbilityRuntime.AbilityCore
**Parameters**
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- |
| config | [Configuration](js-apis-application-configuration.md) | Yes| **Configuration** object after the change.|
## EnvironmentCallback.onMemoryLevel
onMemoryLevel(level: number): void;
Called when the system memory level changes.
**System capability**: SystemCapability.Ability.AbilityRuntime.AbilityCore
**Parameters**
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- |
| level | [MemoryLevel](js-apis-app-ability-abilityConstant.md#abilityconstantmemorylevel) | Yes| New memory level.|
**Example**
```ts
import UIAbility from '@ohos.app.ability.UIAbility';
let callbackId;
export default class EntryAbility extends UIAbility {
onCreate() {
console.log('MyAbility onCreate');
globalThis.applicationContext = this.context.getApplicationContext();
let environmentCallback = {
onConfigurationUpdated(config){
console.log('onConfigurationUpdated config: ${JSON.stringify(config)}');
},
onMemoryLevel(level){
console.log('onMemoryLevel level: ${level}');
}
};
// 1. Obtain an applicationContext object.
let applicationContext = globalThis.applicationContext;
// 2. Register a listener for the environment changes through the applicationContext object.
callbackId = applicationContext.registerEnvironmentCallback(environmentCallback);
console.log('registerEnvironmentCallback number: ${JSON.stringify(callbackId)}');
}
onDestroy() {
let applicationContext = globalThis.applicationContext;
applicationContext.unregisterEnvironmentCallback(callbackId, (error, data) => {
if (error && error.code !== 0) {
console.error('unregisterEnvironmentCallback fail, error: ${JSON.stringify(error)}');
} else {
console.log('unregisterEnvironmentCallback success, data: ${JSON.stringify(data)}');
}
});
}
}
```
## PacMap
[key: string]: number | string | boolean | Array\<string | number | boolean> | null;
**System capability**: SystemCapability.Ability.AbilityRuntime.FAModel
| Name| Type| Mandatory| Description|
| ------ | ------ | ------ | ------ |
| [key: string] | number \| string \| boolean \| Array\<string \| number \| boolean\> \| null | Yes| Data stored in key-value pairs.|
...@@ -1559,3 +1559,84 @@ try { ...@@ -1559,3 +1559,84 @@ try {
console.error(`startRecentAbility failed, code is ${err.code}, message is ${err.message}`); console.error(`startRecentAbility failed, code is ${err.code}, message is ${err.message}`);
} }
``` ```
## ServiceExtensionContext.startAbilityByCallWithAccount<sup>10+</sup>
startAbilityByCallWithAccount(want: Want, accountId: number): Promise&lt;Caller&gt;;
Starts an ability with the account ID specified and obtains the caller object for communicating with the ability.
Observe the following when using this API:
- If an application needs to call this API to start an ability that belongs to another user, it must have the **ohos.permission.ABILITY_BACKGROUND_COMMUNICATION** and **ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS** permissions.
- If an application running in the background needs to call this API to start an ability, it must have the **ohos.permission.START_ABILITIES_FROM_BACKGROUND** permission.
- If **exported** of the target ability is **false** in cross-application scenarios, the caller must have the **ohos.permission.START_INVISIBLE_ABILITY** permission.
- The rules for using this API in the same-device and cross-device scenarios are different. For details, see [Component Startup Rules (Stage Model)](../../application-models/component-startup-rules.md).
**System capability**: SystemCapability.Ability.AbilityRuntime.Core
**System API**: This is a system API and cannot be called by third-party applications.
**Parameters**
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- |
| want | [Want](js-apis-application-want.md) | Yes| Information about the ability to start, including **abilityName**, **moduleName**, **bundleName**, **deviceId** (optional), and **parameters** (optional). If **deviceId** is left blank or null, the local ability is started. If **parameters** is left blank or null, the ability is started in the background.|
| accountId | number | Yes| ID of a system account. The value **-1** indicates the current user. For details, see [getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess).|
**Return value**
| Type| Description|
| -------- | -------- |
| Promise&lt;Caller&gt; | Promise used to return the caller object to communicate with.|
**Error codes**
For details about the error codes, see [Ability Error Codes](../errorcodes/errorcode-ability.md).
| ID| Error Message|
| ------- | -------------------------------- |
| 16000001 | Input error. The specified ability name does not exist. |
| 16000002 | Incorrect ability type. |
| 16000004 | Visibility verification failed. |
| 16000005 | Static permission denied. The specified process does not have the permission. |
| 16000006 | Cross-user operations are not allowed. |
| 16000008 | Crowdtest App Expiration. |
| 16000011 | The context does not exist. |
| 16000050 | Internal Error. |
| 16200001 | The caller has been released. |
**Example**
```ts
let caller;
// ID of a system account. The value -1 indicates the current user.
let accountId = -1;
// Specify the ability to start.
let want = {
bundleName: 'com.acts.actscalleeabilityrely',
moduleName: 'entry',
abilityName: 'EntryAbility'
deviceId: ''
parameters: {
// If the value of 'ohos.aafwk.param.callAbilityToForeground' is true, the ability is started in the foreground. If the value is false or not set, the ability is started in the background.
'ohos.aafwk.param.callAbilityToForeground': true
}
};
try {
this.context.startAbilityByCallWithAccount(want, accountId)
.then((obj) => {
// Carry out normal service processing.
caller = obj;
console.log('startAbilityByCallWithAccount succeed');
}).catch((error) => {
// Process service logic errors.
console.error('startAbilityByCallWithAccount failed, error.code: ${error.code}, error.message: ${error.message}');
});
} catch (paramError) {
// Process input parameter errors.
console.error('error.code: ${paramError.code}, error.message: ${paramError.message}');
}
```
...@@ -2519,3 +2519,84 @@ try { ...@@ -2519,3 +2519,84 @@ try {
console.error(`startRecentAbility failed, code is ${err.code}, message is ${err.message}`); console.error(`startRecentAbility failed, code is ${err.code}, message is ${err.message}`);
} }
``` ```
## UIAbilityContext.startAbilityByCallWithAccount
startAbilityByCallWithAccount(want: Want, accountId: number): Promise&lt;Caller&gt;;
Starts an ability with the account ID specified and obtains the caller object for communicating with the ability.
Observe the following when using this API:
- If an application needs to call this API to start an ability that belongs to another user, it must have the **ohos.permission.ABILITY_BACKGROUND_COMMUNICATION** and **ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS** permissions.
- If an application running in the background needs to call this API to start an ability, it must have the **ohos.permission.START_ABILITIES_FROM_BACKGROUND** permission.
- If **exported** of the target ability is **false** in cross-application scenarios, the caller must have the **ohos.permission.START_INVISIBLE_ABILITY** permission.
- The rules for using this API in the same-device and cross-device scenarios are different. For details, see [Component Startup Rules (Stage Model)](../../application-models/component-startup-rules.md).
**System capability**: SystemCapability.Ability.AbilityRuntime.Core
**System API**: This is a system API and cannot be called by third-party applications.
**Parameters**
| Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- |
| want | [Want](js-apis-application-want.md) | Yes| Information about the ability to start, including **abilityName**, **moduleName**, **bundleName**, **deviceId** (optional), and **parameters** (optional). If **deviceId** is left blank or null, the local ability is started. If **parameters** is left blank or null, the ability is started in the background.|
| accountId | number | Yes| ID of a system account. The value **-1** indicates the current user. For details, see [getCreatedOsAccountsCount](js-apis-osAccount.md#getosaccountlocalidfromprocess).|
**Return value**
| Type| Description|
| -------- | -------- |
| Promise&lt;Caller&gt; | Promise used to return the caller object to communicate with.|
**Error codes**
| ID| Error Message|
| ------- | -------------------------------- |
| 16000001 | Input error. The specified ability name does not exist. |
| 16000002 | Incorrect ability type. |
| 16000004 | Visibility verification failed. |
| 16000005 | Static permission denied. The specified process does not have the permission. |
| 16000006 | Cross-user operations are not allowed. |
| 16000008 | Crowdtest App Expiration. |
| 16000011 | The context does not exist. |
| 16000050 | Internal Error. |
| 16200001 | The caller has been released. |
For details about the error codes, see [Ability Error Codes](../errorcodes/errorcode-ability.md).
**Example**
```ts
let caller;
// ID of a system account. The value -1 indicates the current user.
let accountId = -1;
// Specify the ability to start.
let want = {
bundleName: 'com.acts.actscalleeabilityrely',
moduleName: 'entry',
abilityName: 'EntryAbility'
deviceId: ''
parameters: {
// If the value of 'ohos.aafwk.param.callAbilityToForeground' is true, the ability is started in the foreground. If the value is false or not set, the ability is started in the background.
'ohos.aafwk.param.callAbilityToForeground': true
}
};
try {
this.context.startAbilityByCallWithAccount(want, accountId)
.then((obj) => {
// Carry out normal service processing.
caller = obj;
console.log('startAbilityByCallWithAccount succeed');
}).catch((error) => {
// Process service logic errors.
console.error('startAbilityByCallWithAccount failed, error.code: ${error.code}, error.message: ${error.message}');
});
} catch (paramError) {
// Process input parameter errors.
console.error('error.code: ${paramError.code}, error.message: ${paramError.message}');
}
```
...@@ -67,6 +67,7 @@ ...@@ -67,6 +67,7 @@
- [Application Event Logging Error Codes](errorcode-hiappevent.md) - [Application Event Logging Error Codes](errorcode-hiappevent.md)
- [HiSysEvent Error Codes](errorcode-hisysevent.md) - [HiSysEvent Error Codes](errorcode-hisysevent.md)
- [HiDebug Error Codes](errorcode-hiviewdfx-hidebug.md) - [HiDebug Error Codes](errorcode-hiviewdfx-hidebug.md)
- [Log Library Error Codes](errorcode-loglibrary.md)
- [Input Method Framework Error Codes](errorcode-inputmethod-framework.md) - [Input Method Framework Error Codes](errorcode-inputmethod-framework.md)
- [Pasteboard Error Codes](errorcode-pasteboard.md) - [Pasteboard Error Codes](errorcode-pasteboard.md)
- [Screen Lock Management Error Codes](errorcode-screenlock.md) - [Screen Lock Management Error Codes](errorcode-screenlock.md)
...@@ -82,7 +83,8 @@ ...@@ -82,7 +83,8 @@
- [Thermal Manager Error Codes](errorcode-thermal.md) - [Thermal Manager Error Codes](errorcode-thermal.md)
- [Device Management Error Codes](errorcode-device-manager.md) - [Device Management Error Codes](errorcode-device-manager.md)
- [Location Subsystem Error Codes](errorcode-geoLocationManager.md) - [Location Subsystem Error Codes](errorcode-geoLocationManager.md)
- [Screen Hopping Error Codes](errorcode-multimodalinput.md) - [Screen Hopping Error Codes](errorcode-devicestatus.md)
- [Screen Hopping Error Codes (to Be Deprecated)](errorcode-multimodalinput.md)
- [Sensor Error Codes](errorcode-sensor.md) - [Sensor Error Codes](errorcode-sensor.md)
- [Vibrator Error Codes](errorcode-vibrator.md) - [Vibrator Error Codes](errorcode-vibrator.md)
- [System Parameter Error Codes](errorcode-system-parameterV9.md) - [System Parameter Error Codes](errorcode-system-parameterV9.md)
......
...@@ -19,7 +19,7 @@ To use the APIs in this file, **libpixelmap_ndk.z.so** is required. ...@@ -19,7 +19,7 @@ To use the APIs in this file, **libpixelmap_ndk.z.so** is required.
| Name| Description| | Name| Description|
| -------- | -------- | | -------- | -------- |
| [image_pixel_map_napi.h](image__pixel__map__napi_8h.md) | Declares the APIs that can lock, access, and unlock a pixel map.<br>File to include:: <multimedia/image_framework/image_pixel_map_napi.h>| | [image_pixel_map_napi.h](image__pixel__map__napi_8h.md) | Declares the APIs that can lock, access, and unlock a pixel map.<br>File to include: <multimedia/image_framework/image_pixel_map_napi.h> |
### Structs ### Structs
......
...@@ -115,6 +115,7 @@ ...@@ -115,6 +115,7 @@
- Widget Event Development - Widget Event Development
- [Widget Event Capability Overview](application-models/arkts-ui-widget-event-overview.md) - [Widget Event Capability Overview](application-models/arkts-ui-widget-event-overview.md)
- [Redirecting to a Specified Page Through the Router Event](application-models/arkts-ui-widget-event-router.md) - [Redirecting to a Specified Page Through the Router Event](application-models/arkts-ui-widget-event-router.md)
- [Launching a UIAbility in the Background Through the call Event](application-models/arkts-ui-widget-event-call.md)
- [Updating Widget Content Through FormExtensionAbility](application-models/arkts-ui-widget-event-formextensionability.md) - [Updating Widget Content Through FormExtensionAbility](application-models/arkts-ui-widget-event-formextensionability.md)
- [Updating Widget Content Through UIAbility](application-models/arkts-ui-widget-event-uiability.md) - [Updating Widget Content Through UIAbility](application-models/arkts-ui-widget-event-uiability.md)
- Widget Data Interaction - Widget Data Interaction
...@@ -602,6 +603,7 @@ ...@@ -602,6 +603,7 @@
- [wukong User Guide](application-test/wukong-guidelines.md) - [wukong User Guide](application-test/wukong-guidelines.md)
- [OpenHarmony IDL Specifications and User Guide](IDL/idl-guidelines.md) - [OpenHarmony IDL Specifications and User Guide](IDL/idl-guidelines.md)
- Native APIs - Native APIs
- [Introduction to Native APIs](napi/introduction.md)
- [Using Native APIs in Application Projects](napi/napi-guidelines.md) - [Using Native APIs in Application Projects](napi/napi-guidelines.md)
- [Drawing Development](napi/drawing-guidelines.md) - [Drawing Development](napi/drawing-guidelines.md)
- [Raw File Development](napi/rawfile-guidelines.md) - [Raw File Development](napi/rawfile-guidelines.md)
...@@ -693,7 +695,7 @@ ...@@ -693,7 +695,7 @@
- [DataPanel](reference/arkui-ts/ts-basic-components-datapanel.md) - [DataPanel](reference/arkui-ts/ts-basic-components-datapanel.md)
- [DatePicker](reference/arkui-ts/ts-basic-components-datepicker.md) - [DatePicker](reference/arkui-ts/ts-basic-components-datepicker.md)
- [Divider](reference/arkui-ts/ts-basic-components-divider.md) - [Divider](reference/arkui-ts/ts-basic-components-divider.md)
- [Formcomponent](reference/arkui-ts/ts-basic-components-formcomponent.md) - [FormComponent](reference/arkui-ts/ts-basic-components-formcomponent.md)
- [Gauge](reference/arkui-ts/ts-basic-components-gauge.md) - [Gauge](reference/arkui-ts/ts-basic-components-gauge.md)
- [Image](reference/arkui-ts/ts-basic-components-image.md) - [Image](reference/arkui-ts/ts-basic-components-image.md)
- [ImageAnimator](reference/arkui-ts/ts-basic-components-imageanimator.md) - [ImageAnimator](reference/arkui-ts/ts-basic-components-imageanimator.md)
...@@ -1289,7 +1291,7 @@ ...@@ -1289,7 +1291,7 @@
- [@ohos.systemTimer (System Timer)](reference/apis/js-apis-system-timer.md) - [@ohos.systemTimer (System Timer)](reference/apis/js-apis-system-timer.md)
- [@ohos.wallpaper (Wallpaper)](reference/apis/js-apis-wallpaper.md) - [@ohos.wallpaper (Wallpaper)](reference/apis/js-apis-wallpaper.md)
- [@ohos.web.webview (Webview)](reference/apis/js-apis-webview.md) - [@ohos.web.webview (Webview)](reference/apis/js-apis-webview.md)
- [Console](reference/apis/js-apis-logs.md) - [console (Log)](reference/apis/js-apis-logs.md)
- [Timer](reference/apis/js-apis-timer.md) - [Timer](reference/apis/js-apis-timer.md)
- application - application
- [AccessibilityExtensionContext](reference/apis/js-apis-inner-application-accessibilityExtensionContext.md) - [AccessibilityExtensionContext](reference/apis/js-apis-inner-application-accessibilityExtensionContext.md)
...@@ -1332,6 +1334,7 @@ ...@@ -1332,6 +1334,7 @@
- [@ohos.configPolicy (Configuration Policy)](reference/apis/js-apis-configPolicy.md) - [@ohos.configPolicy (Configuration Policy)](reference/apis/js-apis-configPolicy.md)
- [@ohos.enterprise.accountManager (Account Management)](reference/apis/js-apis-enterprise-accountManager.md) - [@ohos.enterprise.accountManager (Account Management)](reference/apis/js-apis-enterprise-accountManager.md)
- [@ohos.enterprise.adminManager (Enterprise Device Management)](reference/apis/js-apis-enterprise-adminManager.md) - [@ohos.enterprise.adminManager (Enterprise Device Management)](reference/apis/js-apis-enterprise-adminManager.md)
- [@ohos.enterprise.applicationManager (Application Management)](reference/apis/js-apis-enterprise-applicationManager.md)
- [@ohos.enterprise.bundleManager (Bundle Management)](reference/apis/js-apis-enterprise-bundleManager.md) - [@ohos.enterprise.bundleManager (Bundle Management)](reference/apis/js-apis-enterprise-bundleManager.md)
- [@ohos.enterprise.dateTimeManager (System Time Management)](reference/apis/js-apis-enterprise-dateTimeManager.md) - [@ohos.enterprise.dateTimeManager (System Time Management)](reference/apis/js-apis-enterprise-dateTimeManager.md)
- [@ohos.enterprise.deviceControl (Device Control Management)](reference/apis/js-apis-enterprise-deviceControl.md) - [@ohos.enterprise.deviceControl (Device Control Management)](reference/apis/js-apis-enterprise-deviceControl.md)
......
...@@ -293,7 +293,7 @@ A floating window is created based on an existing task. It is always displayed i ...@@ -293,7 +293,7 @@ A floating window is created based on an existing task. It is always displayed i
> **NOTE** > **NOTE**
> >
> If the task for creating the floating window is reclaimed by the system, the floating window will no longer be displayed. If you want the floating window to be displayed in such a case, apply for a [continuous task](../task-management/background-task-overview.md). > If the task for creating the floating window is reclaimed by the system, the floating window will no longer be displayed. If you want the floating window to be displayed in such a case, apply for a [continuous task](../task-management/continuous-task-dev-guide.md).
```json ```json
{ {
...@@ -387,4 +387,4 @@ A floating window is created based on an existing task. It is always displayed i ...@@ -387,4 +387,4 @@ A floating window is created based on an existing task. It is always displayed i
}); });
} }
}; };
``` ```
\ No newline at end of file
...@@ -12,7 +12,7 @@ However, you can customize an animation to be played during the display or hidin ...@@ -12,7 +12,7 @@ However, you can customize an animation to be played during the display or hidin
> **NOTE** > **NOTE**
> >
> This document involves the use of system APIs. Use the full SDK for development. For details, see [Guide to Switching to Full SDK](../quick-start/full-sdk-switch-guide.md). > This document involves the use of system APIs. Use the full SDK for development. For details, see [Guide to Switching to Full SDK](../faqs/full-sdk-switch-guide.md).
## Available APIs ## Available APIs
......
...@@ -36,7 +36,7 @@ The Contacts application allows third-party applications to invoke the system ca ...@@ -36,7 +36,7 @@ The Contacts application allows third-party applications to invoke the system ca
| -------- | -------- | -------- | | -------- | -------- | -------- |
| OpenHarmony | 3.1.1 Release | NA | | OpenHarmony | 3.1.1 Release | NA |
| Public SDK | Ohos_sdk_public 3.1.6.6 (API Version 8 Release)| This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio 3.0 Beta4 or later.<br>The public SDK of API version 8 was released on July 6, 2022.| | Public SDK | Ohos_sdk_public 3.1.6.6 (API Version 8 Release)| This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio 3.0 Beta4 or later.<br>The public SDK of API version 8 was released on July 6, 2022.|
| Full SDK | Ohos_sdk_full&nbsp;3.1.6.5 (API Version 8 Release) | This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the full SDK, manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/quick-start/full-sdk-switch-guide.md).| | Full SDK | Ohos_sdk_full 3.1.6.5 (API Version 8 Release) | This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the full SDK, manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/faqs/full-sdk-switch-guide.md).|
| (Optional) HUAWEI DevEco Studio| 3.0 Beta3 for OpenHarmony | This tool is recommended for developing OpenHarmony applications.| | (Optional) HUAWEI DevEco Studio| 3.0 Beta3 for OpenHarmony | This tool is recommended for developing OpenHarmony applications.|
| (Optional) HUAWEI DevEco Device Tool| 3.0 Release | This tool is recommended for developing OpenHarmony smart devices.| | (Optional) HUAWEI DevEco Device Tool| 3.0 Release | This tool is recommended for developing OpenHarmony smart devices.|
......
...@@ -21,7 +21,7 @@ Fixed known SDK defects, and released the latest SDK version. ...@@ -21,7 +21,7 @@ Fixed known SDK defects, and released the latest SDK version.
| Software/Tool| Version| Remarks| | Software/Tool| Version| Remarks|
| -------- | -------- | -------- | | -------- | -------- | -------- |
| OpenHarmony | 3.1.2 Release| N/A| | OpenHarmony | 3.1.2 Release| N/A|
| Full SDK | Ohos_sdk_full&nbsp;3.1.7.7&nbsp;(API&nbsp;Version&nbsp;8&nbsp;Relese)<br>Ohos_sdk_full&nbsp;3.1.7.5&nbsp;(API&nbsp;Version&nbsp;8&nbsp;Relese) | This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the Full SDK, you must manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](https://gitee.com/openharmony/docs/blob/master/en/application-dev/quick-start/full-sdk-switch-guide.md).| | Full SDK | Ohos_sdk_full 3.1.7.7 (API Version 8 Relese)<br>Ohos_sdk_full 3.1.7.5 (API Version 8 Relese) | This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the full SDK, manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/faqs/full-sdk-switch-guide.md).|
| Public SDK | Ohos_sdk_public&nbsp;3.1.7.7&nbsp;(API&nbsp;Version&nbsp;8&nbsp;Release)<br>Ohos_sdk_public 3.1.7.5 (API Version 8 Release) | This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio 3.0 Beta4 or later.| | Public SDK | Ohos_sdk_public&nbsp;3.1.7.7&nbsp;(API&nbsp;Version&nbsp;8&nbsp;Release)<br>Ohos_sdk_public 3.1.7.5 (API Version 8 Release) | This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio 3.0 Beta4 or later.|
| (Optional) HUAWEI DevEco Studio| 3.0 Beta4 for OpenHarmony | Recommended for developing OpenHarmony applications.| | (Optional) HUAWEI DevEco Studio| 3.0 Beta4 for OpenHarmony | Recommended for developing OpenHarmony applications.|
| (Optional) HUAWEI DevEco Device Tool| 3.0 Release | Recommended for developing OpenHarmony devices.| | (Optional) HUAWEI DevEco Device Tool| 3.0 Release | Recommended for developing OpenHarmony devices.|
...@@ -36,7 +36,7 @@ Fixed known SDK defects, and released the latest SDK version. ...@@ -36,7 +36,7 @@ Fixed known SDK defects, and released the latest SDK version.
2. Register an SSH public key for access to Gitee. 2. Register an SSH public key for access to Gitee.
3. Install the [git client](https://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 user information. 3. Install the [Git client](https://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.name "yourname"
...@@ -117,7 +117,7 @@ This version does not involve API updates. ...@@ -117,7 +117,7 @@ This version does not involve API updates.
### Chip and Development Board Adaptation ### Chip and Development Board Adaptation
For details about the adaptation status, see [SIG_DevBoard](https://gitee.com/openharmony/community/blob/master/sig/sig_devboard/sig_devboard.md). For details about the adaptation status, see [SIG-Devboard](https://gitee.com/openharmony/community/blob/master/sig/sig_devboard/sig_devboard.md).
## Resolved Issues ## Resolved Issues
......
...@@ -13,7 +13,7 @@ OpenHarmony 3.1.3 Release provides enhanced system security over OpenHarmony 3.1 ...@@ -13,7 +13,7 @@ OpenHarmony 3.1.3 Release provides enhanced system security over OpenHarmony 3.1
| Software/Tool| Version| Remarks| | Software/Tool| Version| Remarks|
| -------- | -------- | -------- | | -------- | -------- | -------- |
| OpenHarmony | 3.1.3 Release | NA | | OpenHarmony | 3.1.3 Release | NA |
| Full SDK| Ohos_sdk_full 3.1.7.7 (API Version 8 Release)| This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the Full SDK, you must manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/quick-start/full-sdk-switch-guide.md). | | Full SDK| Ohos_sdk_full 3.1.7.7 (API Version 8 Release)| This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the Full SDK, you must manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/faqs/full-sdk-switch-guide.md). |
| Public SDK| Ohos_sdk_public 3.1.7.7 (API Version 8 Release)| This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio 3.0 Beta4 or later.| | Public SDK| Ohos_sdk_public 3.1.7.7 (API Version 8 Release)| This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio 3.0 Beta4 or later.|
| (Optional) HUAWEI DevEco Studio| 3.0 Release for OpenHarmony| Recommended for developing OpenHarmony applications| | (Optional) HUAWEI DevEco Studio| 3.0 Release for OpenHarmony| Recommended for developing OpenHarmony applications|
| (Optional) HUAWEI DevEco Device Tool| 3.0 Release| Recommended for developing OpenHarmony smart devices| | (Optional) HUAWEI DevEco Device Tool| 3.0 Release| Recommended for developing OpenHarmony smart devices|
......
...@@ -13,7 +13,7 @@ OpenHarmony 3.1.4 Release provides enhanced system security over OpenHarmony 3.1 ...@@ -13,7 +13,7 @@ OpenHarmony 3.1.4 Release provides enhanced system security over OpenHarmony 3.1
| Software/Tool| Version| Remarks| | Software/Tool| Version| Remarks|
| -------- | -------- | -------- | | -------- | -------- | -------- |
| OpenHarmony | 3.1.4 Release| NA | | OpenHarmony | 3.1.4 Release| NA |
| Full SDK | Ohos_sdk_full&nbsp;3.1.9.7&nbsp;(API&nbsp;Version&nbsp;8&nbsp;Relese) | This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the Full SDK, you must manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/quick-start/full-sdk-switch-guide.md).| | Full SDK | Ohos_sdk_full 3.1.9.7 (API Version 8 Relese) | This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the Full SDK, you must manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/faqs/full-sdk-switch-guide.md).|
| Public SDK | Ohos_sdk_public 3.1.9.7 (API Version 8 Release)| This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio 3.0 Beta4 or later.| | Public SDK | Ohos_sdk_public 3.1.9.7 (API Version 8 Release)| This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio 3.0 Beta4 or later.|
| (Optional) HUAWEI DevEco Studio| 3.1 Preview for OpenHarmony| Recommended for developing OpenHarmony applications| | (Optional) HUAWEI DevEco Studio| 3.1 Preview for OpenHarmony| Recommended for developing OpenHarmony applications|
| (Optional) HUAWEI DevEco Device Tool| 3.0 Release| Recommended for developing OpenHarmony smart devices| | (Optional) HUAWEI DevEco Device Tool| 3.0 Release| Recommended for developing OpenHarmony smart devices|
......
...@@ -13,7 +13,7 @@ OpenHarmony 3.1.5 Release provides enhanced system security over OpenHarmony 3.1 ...@@ -13,7 +13,7 @@ OpenHarmony 3.1.5 Release provides enhanced system security over OpenHarmony 3.1
| Software/Tool| Version| Remarks| | Software/Tool| Version| Remarks|
| -------- | -------- | -------- | | -------- | -------- | -------- |
| OpenHarmony | 3.1.5 Release| NA | | OpenHarmony | 3.1.5 Release| NA |
| Full SDK | Ohos_sdk_full 3.1.11.5 (API Version 8 Release)| This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the Full SDK, you must manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/quick-start/full-sdk-switch-guide.md).| | Full SDK | Ohos_sdk_full 3.1.11.5 (API Version 8 Release)| This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the Full SDK, you must manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/faqs/full-sdk-switch-guide.md).|
| Public SDK | Ohos_sdk_public 3.1.11.5 (API Version 8 Release)| This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio 3.0 Beta4 or later.| | Public SDK | Ohos_sdk_public 3.1.11.5 (API Version 8 Release)| This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio 3.0 Beta4 or later.|
| (Optional) HUAWEI DevEco Studio| 3.1 Preview for OpenHarmony| Recommended for developing OpenHarmony applications| | (Optional) HUAWEI DevEco Studio| 3.1 Preview for OpenHarmony| Recommended for developing OpenHarmony applications|
| (Optional) HUAWEI DevEco Device Tool| 3.0 Release| Recommended for developing OpenHarmony smart devices| | (Optional) HUAWEI DevEco Device Tool| 3.0 Release| Recommended for developing OpenHarmony smart devices|
......
...@@ -13,7 +13,7 @@ OpenHarmony 3.1.6 Release provides enhanced system security over OpenHarmony 3.1 ...@@ -13,7 +13,7 @@ OpenHarmony 3.1.6 Release provides enhanced system security over OpenHarmony 3.1
| Software/Tool| Version| Remarks| | Software/Tool| Version| Remarks|
| -------- | -------- | -------- | | -------- | -------- | -------- |
| OpenHarmony | 3.1.6 Release | NA | | OpenHarmony | 3.1.6 Release | NA |
| Full SDK | Ohos_sdk_full 3.1.12.5 (API Version 8 Release)| This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the Full SDK, you must manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/quick-start/full-sdk-switch-guide.md).| | Full SDK | Ohos_sdk_full 3.1.12.5 (API Version 8 Release)| This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the Full SDK, you must manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/faqs/full-sdk-switch-guide.md).|
| Public SDK | Ohos_sdk_public 3.1.12.5 (API Version 8 Release)| This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio 3.0 Beta4 or later.| | Public SDK | Ohos_sdk_public 3.1.12.5 (API Version 8 Release)| This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio 3.0 Beta4 or later.|
| (Optional) HUAWEI DevEco Studio| 3.1 Preview for OpenHarmony| Recommended for developing OpenHarmony applications| | (Optional) HUAWEI DevEco Studio| 3.1 Preview for OpenHarmony| Recommended for developing OpenHarmony applications|
| (Optional) HUAWEI DevEco Device Tool| 3.0 Release| Recommended for developing OpenHarmony smart devices| | (Optional) HUAWEI DevEco Device Tool| 3.0 Release| Recommended for developing OpenHarmony smart devices|
......
...@@ -12,7 +12,7 @@ OpenHarmony 3.1.7 Release provides enhanced system security over OpenHarmony 3.1 ...@@ -12,7 +12,7 @@ OpenHarmony 3.1.7 Release provides enhanced system security over OpenHarmony 3.1
| Software/Tool | Version | Remarks | | Software/Tool | Version | Remarks |
| ------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | | ------------------------------------------------ | ------------------------------------------------------------ | ------------------------------------------------------------ |
| OpenHarmony | 3.1.7 Release | NA | | OpenHarmony | 3.1.7 Release | NA |
| Full SDK | Ohos_sdk_full 3.1.13.5 (API Version 8 Release)| This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the Full SDK, you must manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/quick-start/full-sdk-switch-guide.md).| | Full SDK | Ohos_sdk_full 3.1.13.5 (API Version 8 Release)| This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the Full SDK, you must manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/faqs/full-sdk-switch-guide.md).|
| Public SDK | Ohos_sdk_public 3.1.13.5 (API Version 8 Release)| This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio 3.0 Beta4 or later.| | Public SDK | Ohos_sdk_public 3.1.13.5 (API Version 8 Release)| This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio 3.0 Beta4 or later.|
| (Optional) HUAWEI DevEco Studio | 3.1 Preview for OpenHarmony | Recommended for developing OpenHarmony applications | | (Optional) HUAWEI DevEco Studio | 3.1 Preview for OpenHarmony | Recommended for developing OpenHarmony applications |
| (Optional) HUAWEI DevEco Device Tool| 3.0 Release | Recommended for developing OpenHarmony smart devices | | (Optional) HUAWEI DevEco Device Tool| 3.0 Release | Recommended for developing OpenHarmony smart devices |
......
...@@ -36,7 +36,7 @@ Added samples such as Gobang, QR code generation and parsing, widget usage, mult ...@@ -36,7 +36,7 @@ Added samples such as Gobang, QR code generation and parsing, widget usage, mult
| -------- | -------- | -------- | | -------- | -------- | -------- |
| OpenHarmony | 3.2 Beta2 | NA | | OpenHarmony | 3.2 Beta2 | NA |
| Public SDK | Ohos_sdk_public 3.2.5.5 (API Version 9 Beta2)<br>Ohos_sdk_public 3.2.5.6 (API Version 9 Beta2) | This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio.| | Public SDK | Ohos_sdk_public 3.2.5.5 (API Version 9 Beta2)<br>Ohos_sdk_public 3.2.5.6 (API Version 9 Beta2) | This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio.|
| Full SDK | Ohos_sdk_full 3.2.5.5 (API Version 9 Beta2)<br>Ohos_sdk_full 3.2.5.6 (API Version 9 Beta2) | This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the full SDK, manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/quick-start/full-sdk-switch-guide.md).| | Full SDK | Ohos_sdk_full 3.2.5.5 (API Version 9 Beta2)<br>Ohos_sdk_full 3.2.5.6 (API Version 9 Beta2) | This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the full SDK, manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/faqs/full-sdk-switch-guide.md).|
| (Optional) HUAWEI DevEco Studio| 3.0 Beta4 | This tool is recommended for developing OpenHarmony applications.| | (Optional) HUAWEI DevEco Studio| 3.0 Beta4 | This tool is recommended for developing OpenHarmony applications.|
| (Optional) HUAWEI DevEco Device Tool| 3.0 Release | This tool is recommended for developing OpenHarmony smart devices.| | (Optional) HUAWEI DevEco Device Tool| 3.0 Release | This tool is recommended for developing OpenHarmony smart devices.|
...@@ -132,7 +132,7 @@ This version has the following updates to OpenHarmony 3.2 Beta1. ...@@ -132,7 +132,7 @@ This version has the following updates to OpenHarmony 3.2 Beta1.
### SDK Updates ### SDK Updates
From this version onwards, both the Public SDK and Full SDK are provided. The Public SDK is provided as standard in DevEco Studio. From this version onwards, both the Public SDK and Full SDK are provided. The Public SDK is provided as standard in DevEco Studio.
If an application developed using the SDK of an earlier version calls system APIs, you must manually switch to the Full SDK by following the instructions provided in [Guide to Switching to Full SDK](../application-dev/quick-start/full-sdk-switch-guide.md) after the version upgrade. This operation ensures successful build of your application project. If an application developed using the SDK of an earlier version calls system APIs, you must manually switch to the Full SDK by following the instructions provided in [Guide to Switching to Full SDK](../application-dev/faqs/full-sdk-switch-guide.md) after the version upgrade. This operation ensures successful build of your application project.
### Feature Updates ### Feature Updates
......
...@@ -54,7 +54,7 @@ The distributed database supports cross-device and cross-application sharing. Th ...@@ -54,7 +54,7 @@ The distributed database supports cross-device and cross-application sharing. Th
| -------- | -------- | -------- | | -------- | -------- | -------- |
| OpenHarmony | 3.2 Beta3| NA | | OpenHarmony | 3.2 Beta3| NA |
| Public SDK | Ohos_sdk_public 3.2.7.5 (API Version 9 Beta3)<br>Ohos_sdk_public&nbsp;3.2.7.6&nbsp;(API&nbsp;Version&nbsp;9&nbsp;Beta3) | This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio.| | Public SDK | Ohos_sdk_public 3.2.7.5 (API Version 9 Beta3)<br>Ohos_sdk_public&nbsp;3.2.7.6&nbsp;(API&nbsp;Version&nbsp;9&nbsp;Beta3) | This toolkit is intended for application developers and does not contain system APIs that require system permissions.<br>It is provided as standard in DevEco Studio.|
| Full SDK | Ohos_sdk_full 3.2.7.5 (API Version 9 Beta3)<br>Ohos_sdk_full&nbsp;3.2.7.6&nbsp;(API&nbsp;Version&nbsp;9&nbsp;Beta3) | This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the full SDK, manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/quick-start/full-sdk-switch-guide.md).| | Full SDK | Ohos_sdk_full 3.2.7.5 (API Version 9 Beta3)<br>Ohos_sdk_full&nbsp;3.2.7.6&nbsp;(API&nbsp;Version&nbsp;9&nbsp;Beta3) | This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions.<br>To use the full SDK, manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/faqs/full-sdk-switch-guide.md).|
| (Optional) HUAWEI DevEco Studio| 3.0 Release| Recommended for developing OpenHarmony applications.| | (Optional) HUAWEI DevEco Studio| 3.0 Release| Recommended for developing OpenHarmony applications.|
| (Optional) HUAWEI DevEco Device Tool| 3.0 Release| Recommended for developing OpenHarmony devices.| | (Optional) HUAWEI DevEco Device Tool| 3.0 Release| Recommended for developing OpenHarmony devices.|
......
...@@ -46,7 +46,7 @@ The distributed hardware supports the request and import of credential parameter ...@@ -46,7 +46,7 @@ The distributed hardware supports the request and import of credential parameter
| -------- | -------- | -------- | | -------- | -------- | -------- |
| OpenHarmony | 3.2 Beta4 | NA | | OpenHarmony | 3.2 Beta4 | NA |
| Public SDK | Ohos_sdk_public 3.2.9.2 (API Version 9 Beta4) | This toolkit is intended for application developers and does not contain system APIs that require system permissions. It is provided as standard in DevEco Studio.| | Public SDK | Ohos_sdk_public 3.2.9.2 (API Version 9 Beta4) | This toolkit is intended for application developers and does not contain system APIs that require system permissions. It is provided as standard in DevEco Studio.|
| Full SDK | Ohos_sdk_full 3.2.9.2 (API Version 9 Beta4) | This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions. To use the Full SDK, you must manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/quick-start/full-sdk-switch-guide.md).| | Full SDK | Ohos_sdk_full 3.2.9.2 (API Version 9 Beta4) | This toolkit is intended for original equipment manufacturers (OEMs) and contains system APIs that require system permissions. To use the Full SDK, you must manually obtain it from the mirror and switch to it in DevEco Studio. For details, see [Guide to Switching to Full SDK](../application-dev/faqs/full-sdk-switch-guide.md).|
| (Optional) HUAWEI DevEco Studio| 3.1 Canary1 | Recommended for developing OpenHarmony applications| | (Optional) HUAWEI DevEco Studio| 3.1 Canary1 | Recommended for developing OpenHarmony applications|
| (Optional) HUAWEI DevEco Device Tool| 3.1 Beta1 | Recommended for developing OpenHarmony smart devices| | (Optional) HUAWEI DevEco Device Tool| 3.1 Beta1 | Recommended for developing OpenHarmony smart devices|
......
...@@ -495,7 +495,7 @@ For details, see [DevEco Studio Version Change History](https://developer.harmon ...@@ -495,7 +495,7 @@ For details, see [DevEco Studio Version Change History](https://developer.harmon
| OpenHarmony | 3.2 Release | NA | | OpenHarmony | 3.2 Release | NA |
| Public SDK | Ohos_sdk_public 3.2.11.9 (API Version 9 Release) | This toolkit is intended for application developers and does not contain system APIs that require system permissions. It is provided as standard in DevEco Studio.| | Public SDK | Ohos_sdk_public 3.2.11.9 (API Version 9 Release) | This toolkit is intended for application developers and does not contain system APIs that require system permissions. It is provided as standard in DevEco Studio.|
| (Optional) HUAWEI DevEco Studio| 3.1 Beta2 | Recommended for developing OpenHarmony applications How to obtain:<br>[Windows(64-bit)](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_package_901_9/f3/v3/uJyuq3syQ2ak4hE1QZmAug/devecostudio-windows-3.1.0.400.zip?HW-CC-KV=V1&HW-CC-Date=20230408T013335Z&HW-CC-Expire=315360000&HW-CC-Sign=96262721EDC9B34E6F62E66884AB7AE2A94C2A7B8C28D6F7FC891F46EB211A70)<br>[Mac(X86)](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_package_901_9/b7/v3/4z3mLQPCQR-g5KlC56SC1w/devecostudio-mac-3.1.0.400.zip?HW-CC-KV=V1&HW-CC-Date=20230408T013430Z&HW-CC-Expire=315360000&HW-CC-Sign=93E83FD1F1CE504EF8F098E08955A938FDA4E4926A2555CF1E02DC8D57210D76)<br>[Mac(ARM)](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_package_901_9/2e/v3/Fl9IY6PiQxqc3tnI2cftiw/devecostudio-mac-arm-3.1.0.400.zip?HW-CC-KV=V1&HW-CC-Date=20230408T013540Z&HW-CC-Expire=315360000&HW-CC-Sign=0906243123734033AAD34A7A005ED7671F00CAA693B6E674F81A094A0159ECCE) | | (Optional) HUAWEI DevEco Studio| 3.1 Beta2 | Recommended for developing OpenHarmony applications How to obtain:<br>[Windows(64-bit)](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_package_901_9/f3/v3/uJyuq3syQ2ak4hE1QZmAug/devecostudio-windows-3.1.0.400.zip?HW-CC-KV=V1&HW-CC-Date=20230408T013335Z&HW-CC-Expire=315360000&HW-CC-Sign=96262721EDC9B34E6F62E66884AB7AE2A94C2A7B8C28D6F7FC891F46EB211A70)<br>[Mac(X86)](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_package_901_9/b7/v3/4z3mLQPCQR-g5KlC56SC1w/devecostudio-mac-3.1.0.400.zip?HW-CC-KV=V1&HW-CC-Date=20230408T013430Z&HW-CC-Expire=315360000&HW-CC-Sign=93E83FD1F1CE504EF8F098E08955A938FDA4E4926A2555CF1E02DC8D57210D76)<br>[Mac(ARM)](https://contentcenter-vali-drcn.dbankcdn.cn/pvt_2/DeveloperAlliance_package_901_9/2e/v3/Fl9IY6PiQxqc3tnI2cftiw/devecostudio-mac-arm-3.1.0.400.zip?HW-CC-KV=V1&HW-CC-Date=20230408T013540Z&HW-CC-Expire=315360000&HW-CC-Sign=0906243123734033AAD34A7A005ED7671F00CAA693B6E674F81A094A0159ECCE) |
| (Optional) HUAWEI DevEco Device Tool| 3.1 Release | Recommended for developing OpenHarmony smart devices<br>[Click here](https://device.harmonyos.com/cn/develop/ide/).| | (Optional) HUAWEI DevEco Device Tool| 3.1 Release | Recommended for developing OpenHarmony smart devices<br>[Click here](https://device.harmonyos.com/en/develop/ide/). |
## Source Code Acquisition ## Source Code Acquisition
......
# OpenHarmony 3.2.1 Release
## Version Description
OpenHarmony 3.2.1 Release provides the following enhancements over OpenHarmony 3.2 Release:
According to security compliance requirements, UUIDs are used only for system applications and SAs, no longer for common applications. New UUIDs (sha256(appId_uuid)) that can be used by common applications are used in distributed data management.
## Version Mapping
**Table 1** Version mapping of software and tools
| Software/Tool| Version| Remarks|
| -------- | -------- | -------- |
| OpenHarmony | 3.2.1 Release | NA |
| Public SDK | Ohos_sdk_public 3.2.12.5 (API Version 9 Release) | This toolkit is intended for application developers and does not contain system APIs that require system permissions. It is provided as standard in DevEco Studio.|
| (Optional) HUAWEI DevEco Studio| 3.1 Release | Recommended for developing OpenHarmony applications<br>[Click here](https://developer.harmonyos.com/en/develop/deveco-studio#download)|
| (Optional) HUAWEI DevEco Device Tool| 3.1 Release | Recommended for developing OpenHarmony smart devices<br>[Click here](https://device.harmonyos.com/en/develop/ide/).|
## Source Code Acquisition
### Prerequisites
1. Register your account with Gitee.
2. Register an SSH public key for access to Gitee.
3. Install the [git client](https://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 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 -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo # If you do not have the permission, download the tool to another directory and configure it as an environment variable by running the chmod a+x /usr/local/bin/repo command.
pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests
```
### Acquiring Source Code Using the repo Tool
**Method 1 (recommended)**
Use the **repo** tool to download the source code over SSH. (You must have an SSH public key for access to Gitee.)
```
repo init -u git@gitee.com:openharmony/manifest.git -b refs/tags/OpenHarmony-v3.2.1-Release --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
```
**Method 2**
Use the **repo** tool to download the source code over HTTPS.
Obtain the source code from the version tag, which is the same as that released with the version.
```
repo init -u https://gitee.com/openharmony/manifest -b refs/tags/OpenHarmony-v3.2.1-Release --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
```
### Acquiring Source Code from Mirrors
**Table 2** Mirrors for acquiring source code
| Source Code | Version| Mirror | SHA-256 Checksum | Software Package Size|
| --------------------------------------- | ------------ | ------------------------------------------------------------ | ------------------------------------------------------------ | -------- |
| Full code base (for mini, small, and standard systems) | 3.2.1 Release | [Download](https://repo.huaweicloud.com/openharmony/os/3.2.1/code-v3.2.1-Release.tar.gz)| [Download](https://repo.huaweicloud.com/openharmony/os/3.2.1/code-v3.2.1-Release.tar.gz.sha256)| 21.8 GB |
| Hi3861 solution (binary) | 3.2.1 Release | [Download](https://repo.huaweicloud.com/openharmony/os/3.2.1/hispark_pegasus.tar.gz)| [Download](https://repo.huaweicloud.com/openharmony/os/3.2.1/hispark_pegasus.tar.gz.sha256)| 22.9 MB |
| Hi3516 solution-LiteOS (binary)| 3.2.1 Release | [Download](https://repo.huaweicloud.com/openharmony/os/3.2.1/hispark_taurus_LiteOS.tar.gz) | [Download](https://repo.huaweicloud.com/openharmony/os/3.2.1/hispark_taurus_LiteOS.tar.gz.sha256)| 293.3 MB |
| Hi3516 solution-Linux (binary) | 3.2.1 Release | [Download](https://repo.huaweicloud.com/openharmony/os/3.2.1/hispark_taurus_Linux.tar.gz)| [Download](https://repo.huaweicloud.com/openharmony/os/3.2.1/hispark_taurus_Linux.tar.gz.sha256)| 174.6 MB |
| RK3568 standard system solution (binary) | 3.2.1 Release | [Download](https://repo.huaweicloud.com/openharmony/os/3.2.1/dayu200_standard_arm32.tar.gz)| [Download](https://repo.huaweicloud.com/openharmony/os/3.2.1/dayu200_standard_arm32.tar.gz.sha256)| 3.9 GB |
| Public SDK package for the standard system (macOS) | 3.2.12.5 | [Download](https://repo.huaweicloud.com/openharmony/os/3.2.1/ohos-sdk-mac-public.tar.gz)| [Download](https://repo.huaweicloud.com/openharmony/os/3.2.1/ohos-sdk-mac-public.tar.gz.sha256)| 664.5 MB |
| Public SDK package for the standard system (macOS-M1) | 3.2.12.5 | [Download](https://repo.huaweicloud.com/openharmony/os/3.2.1/L2-SDK-MAC-M1-PUBLIC.tar.gz)| [Download](https://repo.huaweicloud.com/openharmony/os/3.2.1/L2-SDK-MAC-M1-PUBLIC.tar.gz.sha256)| 623.3 MB |
| Public SDK package for the standard system (Windows\Linux) | 3.2.12.5 | [Download](https://repo.huaweicloud.com/openharmony/os/3.2.1/ohos-sdk-windows_linux-public.tar.gz)| [Download](https://repo.huaweicloud.com/openharmony/os/3.2.1/ohos-sdk-windows_linux-public.tar.gz.sha256)| 1.6 GB |
## What's New
### API
This version does not involve API updates.
### Chip and Development Board Adaptation
For details about the adaptation status, see [SIG-Devboard](https://gitee.com/openharmony/community/blob/master/sig/sig_devboard/sig_devboard.md).
## Resolved Issues
**Table 3** Resolved issues
| Issue No.| Description|
| -------- | -------- |
| I6U1H9 | The **gridColOffset** attribute of the **\<GridCol>** component cannot be previewed in the previewer of DevEco Studio.|
| I6TMP3 | When a user holds an application to access image preview, swipes backwards about 150 widgets, and touches to add a widget, the widget may not be displayed on the home screen.|
| I6RJTP | A user touches a Bluetooth headset on the Bluetooth screen of the device for connection. When the status is Connecting, the user cannot disable the Bluetooth feature. The screen does not respond or even crashes.|
| I6TFXF | [Pressure test] [Low probability] The sysevent_service thread in the /system/bin/hiview process causes a crash in libjsoncpp.z.so. This problem occurs once.|
| I6TS20 | [Pressure test] [Low probability] The Chrome_IOThread thread in the com.ohos.note process causes a C++ crash in libweb_engine.so. This problem occurs twice.|
| I6TS25 | [Pressure test] [Low probability] The com.ohos.note thread in the com.ohos.note process causes a C++ crash in libweb_engine.so. This problem occurs once.|
| I6A80S | The Weibo pages loaded by the **\<Web>** component are abnormal.|
| I6VRJ8 | [High probability] [Wukong] The Chrome_IOThread thread in the com.ohos.note process causes a C++ crash in libweb_engine.so. This problem occurs eight times. |
| I6YJHC | [High probability] [Wukong] The com.ohos.note thread in the com.ohos.note process causes a C++ crash in ld-musl-arm.so.1. This problem occurs nine times.|
| I6YT0V | [High probability] [Wukong] The RSRenderThread thread in the com.ohos.note process causes a C++ crash in libeventhandler.z.so. This problem occurs six times. |
| I6YSP4 | [Low probability 1/10] [Wukong] The com.ohos.note thread in the com.ohos.note process causes a crash in librender_service_base.z.so. This problem occurs once.|
| I6Z5XW | [High probability 8/10] When more than 10 drafts are created and then deleted one by one, memory leakage occurs in com.ohos.mms.|
| I6YZGA | [Low probability 1/10] [Wukong] The RSRenderThread thread in the com.ohos.note process causes a C++ crash in libskia_ohos.z.so. This problem occurs four times.|
| I64726<br>I641A2 | When the **bluetooth.pairDevice** API is called, no prompt indicating successful pairing is displayed. The device is paired in silent mode, and the device can be controlled using the Bluetooth keyboard and mouse.|
| I6TRY1 | [Low probability] [Wukong] The com.ohos.note thread in the com.ohos.note process causes a C++ crash in libace.z.so. This problem occurs once.|
| I6TS3O | [Low probability] [Wukong] App freezing occurs in the libace.z.so stack of the com.ohos.contacts process. This problem occurs three times.|
| I6TFT1 | [Low probability] A JS crash occurs in the anonymous/AssertException stack of the com.example.actsgetcurrenttopabilitystageatest process. This problem occurs twice.|
| I6TFUX | [Low probability] [Wukong] The events_emitter thread in the com.open.harmony.acetestfour process causes a crash in libemitter.z.so. This problem occurs once.|
| I6TFXY | [Low probability] A JS crash occurs in the AssertException stack of the com.example.abilitymultiinstance process, and a JS crash occurs in the AssertException stack of the com.example.startabilityforresult process. This problem occurs three times.|
| I6TGJ2 | [Low probability] The usage_event_rep thread in the /system/bin/hiview process causes a crash in libhiviewbase.z.so. This problem occurs twice.|
| I6TR29 | [Low probability] [Wukong] The com.ohos.smartp thread in the com.ohos.smartperf process causes a crash in libace.z.so. This problem occurs once.|
| I6TS0D | [Low probability] The Chrome_IOThread thread in the com.ohos.note process causes a C++ crash in libace.z.so. This problem occurs once.|
| I6TS20 | [Low probability] The Chrome_IOThread thread in the com.ohos.note process causes a C++ crash in libweb_engine.so. This problem occurs twice.|
| I6TS25 | [Low probability] The com.ohos.note thread in the com.ohos.note process causes a C++ crash in libweb_engine.so. This problem occurs once.|
| I6TUR9 | [Pressure test] [High probability] App freezing occurs in the com.ohos.mms process. This problem occurs 10 times.|
| I6TVCX | [Pressure test] [High probability] Memory leakage occurs on the SystemUI and the memory usage increases.|
| I6T09Y | [Pressure test] [Low probability] The com.ohos.camera thread in the com.ohos.camera process causes a crash in libpluginmanager.z.so. This problem occurs once.|
| I6T0EO | [Pressure test] [Low probability] A JS crash occurs twice in the com.ohos.mms process.|
| I6TKQP | [Low probability] [Wukong] The com.ohos.note thread in the com.ohos.note process causes a crash in libace.z.so. This problem occurs once.|
| I6TNY9 | When the call log is full, the dialer cannot be hidden if a user swipes up.|
| I6TRW7<br>I6TRRX<br>I6TRHA<br>I6TRH3<br>I6TRGZ<br>I6TRGO<br>I6TRGJ<br>I6TRGG<br>I6TRGD<br>I6TRG9<br>I6TRG6<br>I6TIFP<br>I6TBIR<br>I6RQLV<br>I6RQLT<br>I6QYZS<br>I6QYZR<br>I6QYZI<br>I6QYZG<br>I6QYZF<br>I6QYZ9<br>I6QYZ7<br>I6TRHE<br>I6TRH7<br>I6TRGV<br>I6TRGS<br>I6TRG2 | [Vulnerability] [OpenHarmony-3.2-Release] lj-oss-fuzz-132<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-1652<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-1815<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-1823<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-1817<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-1819<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-1822<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-1816<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-1821<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-1813<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-1814<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-28464<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2022-48434<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-0466<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-0465<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-27535<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-27533<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-27536<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-27538<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-27537<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-27534<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-0464<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-1812<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-1818<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-1811<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-1820<br>[Vulnerability] [OpenHarmony-3.2-Release] CVE-2023-1810|
## Known Issues
**Table 4** Known issues
| Issue No.| Description| Impact| To Be Resolved By|
| -------- | -------- | -------- | -------- |
| I6B4U3 | There is a low probability (3/10) that app freezing occurs in the com.ohos.launcher process.| When a large number of applications are installed (more than 40 applications) and the memory is small, there is a low probability that app freezing occurs. However, the home screen functions are normal and the overall functions and usage are not affected.| 2023-06-15|
| I6SXBI | There is a low probability that libdistributeddata.z.so in the ohos.samples.distributedcalc process causes a C++ crash.| When a user exits the Calculator application within 1 second after opening it, the JS object is destructed before it is successfully read from the database. An error is recorded in the log, but the user is unaware of the error. The impact is controllable.| 2023-07-15|
| I6TRE6 | There is a low probability that libdatashare_consumer.z.so crashes due to the com.ohos.contacts thread in the com.ohos.contacts process.| When a user exits the Contacts application within 600 ms after opening it, there is a low probability that the contacts process crashes. The contacts process will be automatically restarted after the crash. The impact is controllable.| 2023-07-15|
| I6SMQA | When a user uses a browser application to open a WeiBo page and swipes the screen quickly, jitter occurs during swiping.| The content is not loaded during swiping but will be loaded quickly. User experience is affected.| 2023-06-15|
| I72P5E | Memory leakage occurs in libace.z.so when a user touches an image in Gallery to maximize it and then exits repeatedly.| Each time the user touches an image in Gallery to maximize it and then exits, 10 KB memory of the ArkUI module leaks. When the user touches Back on the application, the leak issue disappears. The impact is controllable.| 2023-07-15|
| I72P5I | Memory leakage occurs in libace.z.so when a user touches an image folder in Gallery to browse images in grid form and then exits repeatedly.| Each time the user touches an image folder in Gallery to browse images in grid form and then exits, 19 KB memory of the ArkUI module leaks. When the user touches Back on the application, the leak issue disappears. The impact is controllable.| 2023-07-15|
| I76N0Y | Memory leakage occurs in libace.z.so when applications are repeatedly added to or removed from the dock bar.| Each time a widget is moved to a valid area, 99 KB memory of the ArkUI module leaks. This operation scenario is uncommon, and the leak issue disappears after the application is restarted. The impact is controllable.| 2023-07-15|
| I6XHE7 | Memory leakage occurs on the NAPIRemoteObject module.| When the JS application calls the IPC, the NAPIRemoteObject process needs to be created, and 1.2 KB memory occurs during the creation. However, the process can be used repeatedly once created, and the memory is released when the application process exits.| 2023-07-15|
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
## OpenHarmony 3.x Releases ## OpenHarmony 3.x Releases
- [OpenHarmony v3.2 Release (2023-04-09)](OpenHarmony-v3.2-release.md) - [OpenHarmony v3.2 Release (2023-04-09)](OpenHarmony-v3.2-release.md)
- [OpenHarmony v3.2.1 Release (2023-05-22)](OpenHarmony-v3.2.1-release.md)
- [OpenHarmony v3.2 Beta5 (2023-01-31)](OpenHarmony-v3.2-beta5.md) - [OpenHarmony v3.2 Beta5 (2023-01-31)](OpenHarmony-v3.2-beta5.md)
- [OpenHarmony v3.2 Beta4 (2022-11-30)](OpenHarmony-v3.2-beta4.md) - [OpenHarmony v3.2 Beta4 (2022-11-30)](OpenHarmony-v3.2-beta4.md)
- [OpenHarmony v3.2 Beta3 (2022-09-30)](OpenHarmony-v3.2-beta3.md) - [OpenHarmony v3.2 Beta3 (2022-09-30)](OpenHarmony-v3.2-beta3.md)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册