Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
37e2d8b7
D
Docs
项目概览
OpenHarmony
/
Docs
大约 1 年 前同步成功
通知
159
Star
292
Fork
28
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
Docs
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
37e2d8b7
编写于
6月 27, 2023
作者:
王
王鑫
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'master' of gitee.com:openharmony/docs
""
上级
246f7660
3cb4b67a
变更
41
隐藏空白更改
内联
并排
Showing
41 changed file
with
1228 addition
and
138 deletion
+1228
-138
zh-cn/application-dev/application-models/create-dataability.md
.../application-dev/application-models/create-dataability.md
+1
-1
zh-cn/application-dev/application-models/service-widget-overview.md
...ication-dev/application-models/service-widget-overview.md
+1
-1
zh-cn/application-dev/key-features/multi-device-app-dev/page-development-intro.md
...y-features/multi-device-app-dev/page-development-intro.md
+1
-1
zh-cn/application-dev/reference/apis/js-apis-ability-featureAbility.md
...tion-dev/reference/apis/js-apis-ability-featureAbility.md
+1
-1
zh-cn/application-dev/reference/apis/js-apis-app-ability-appManager.md
...tion-dev/reference/apis/js-apis-app-ability-appManager.md
+21
-8
zh-cn/application-dev/reference/apis/js-apis-app-ability-appRecovery.md
...ion-dev/reference/apis/js-apis-app-ability-appRecovery.md
+2
-0
zh-cn/application-dev/reference/apis/js-apis-app-ability-dialogRequest.md
...n-dev/reference/apis/js-apis-app-ability-dialogRequest.md
+2
-2
zh-cn/application-dev/reference/apis/js-apis-app-ability-extensionAbility.md
...ev/reference/apis/js-apis-app-ability-extensionAbility.md
+6
-0
zh-cn/application-dev/reference/apis/js-apis-app-ability-missionManager.md
...-dev/reference/apis/js-apis-app-ability-missionManager.md
+1
-1
zh-cn/application-dev/reference/apis/js-apis-app-ability-quickFixManager.md
...dev/reference/apis/js-apis-app-ability-quickFixManager.md
+2
-2
zh-cn/application-dev/reference/apis/js-apis-app-ability-startOptions.md
...on-dev/reference/apis/js-apis-app-ability-startOptions.md
+1
-1
zh-cn/application-dev/reference/apis/js-apis-app-ability-uiAbility.md
...ation-dev/reference/apis/js-apis-app-ability-uiAbility.md
+3
-2
zh-cn/application-dev/reference/apis/js-apis-app-ability-want.md
...pplication-dev/reference/apis/js-apis-app-ability-want.md
+3
-2
zh-cn/application-dev/reference/apis/js-apis-app-ability-wantConstant.md
...on-dev/reference/apis/js-apis-app-ability-wantConstant.md
+1
-1
zh-cn/application-dev/reference/apis/js-apis-app-form-formBindingData.md
...on-dev/reference/apis/js-apis-app-form-formBindingData.md
+12
-2
zh-cn/application-dev/reference/apis/js-apis-app-form-formHost.md
...plication-dev/reference/apis/js-apis-app-form-formHost.md
+170
-6
zh-cn/application-dev/reference/apis/js-apis-app-form-formInfo.md
...plication-dev/reference/apis/js-apis-app-form-formInfo.md
+8
-7
zh-cn/application-dev/reference/apis/js-apis-app-form-formProvider.md
...ation-dev/reference/apis/js-apis-app-form-formProvider.md
+2
-2
zh-cn/application-dev/reference/apis/js-apis-application-StaticSubscriberExtensionContext.md
...s/js-apis-application-StaticSubscriberExtensionContext.md
+6
-0
zh-cn/application-dev/reference/apis/js-apis-application-appManager.md
...tion-dev/reference/apis/js-apis-application-appManager.md
+2
-2
zh-cn/application-dev/reference/apis/js-apis-application-staticSubscriberExtensionAbility.md
...s/js-apis-application-staticSubscriberExtensionAbility.md
+4
-2
zh-cn/application-dev/reference/apis/js-apis-arkui-UIContext.md
...application-dev/reference/apis/js-apis-arkui-UIContext.md
+376
-0
zh-cn/application-dev/reference/apis/js-apis-cryptoFramework.md
...application-dev/reference/apis/js-apis-cryptoFramework.md
+13
-17
zh-cn/application-dev/reference/apis/js-apis-device-info.md
zh-cn/application-dev/reference/apis/js-apis-device-info.md
+3
-3
zh-cn/application-dev/reference/apis/js-apis-inner-application-continueCallback.md
...erence/apis/js-apis-inner-application-continueCallback.md
+3
-1
zh-cn/application-dev/reference/apis/js-apis-inner-application-formExtensionContext.md
...ce/apis/js-apis-inner-application-formExtensionContext.md
+1
-1
zh-cn/application-dev/reference/apis/js-apis-inner-application-serviceExtensionContext.md
...apis/js-apis-inner-application-serviceExtensionContext.md
+2
-2
zh-cn/application-dev/reference/apis/js-apis-inner-application-uiAbilityContext.md
...erence/apis/js-apis-inner-application-uiAbilityContext.md
+3
-3
zh-cn/application-dev/reference/apis/js-apis-promptAction.md
zh-cn/application-dev/reference/apis/js-apis-promptAction.md
+1
-1
zh-cn/application-dev/reference/apis/js-apis-uripermissionmanager.md
...cation-dev/reference/apis/js-apis-uripermissionmanager.md
+65
-6
zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_1501929990650.jpg
.../reference/arkui-ts/figures/zh-cn_image_1501929990650.jpg
+0
-0
zh-cn/application-dev/reference/arkui-ts/ts-container-grid.md
...n/application-dev/reference/arkui-ts/ts-container-grid.md
+1
-0
zh-cn/application-dev/reference/arkui-ts/ts-container-list.md
...n/application-dev/reference/arkui-ts/ts-container-list.md
+5
-2
zh-cn/application-dev/reference/arkui-ts/ts-container-listitem.md
...plication-dev/reference/arkui-ts/ts-container-listitem.md
+1
-48
zh-cn/application-dev/reference/arkui-ts/ts-container-listitemgroup.md
...tion-dev/reference/arkui-ts/ts-container-listitemgroup.md
+1
-1
zh-cn/application-dev/reference/arkui-ts/ts-container-swiper.md
...application-dev/reference/arkui-ts/ts-container-swiper.md
+5
-5
zh-cn/application-dev/reference/native-apis/_hi_log.md
zh-cn/application-dev/reference/native-apis/_hi_log.md
+1
-1
zh-cn/application-dev/ui/arkts-drawing-customization-on-canvas.md
...plication-dev/ui/arkts-drawing-customization-on-canvas.md
+3
-3
zh-cn/application-dev/ui/figures/切换指定页签.gif
zh-cn/application-dev/ui/figures/切换指定页签.gif
+0
-0
zh-cn/release-notes/OpenHarmony-v3.2.2-release.md
zh-cn/release-notes/OpenHarmony-v3.2.2-release.md
+215
-0
zh-cn/release-notes/changelogs/OpenHarmony_4.0.9.1/changelogs-security.md
...tes/changelogs/OpenHarmony_4.0.9.1/changelogs-security.md
+279
-0
未找到文件。
zh-cn/application-dev/application-models/create-dataability.md
浏览文件 @
37e2d8b7
...
...
@@ -12,7 +12,7 @@ import dataAbility from '@ohos.data.dataAbility'
import
relationalStore
from
'
@ohos.data.relationalStore
'
const
TABLE_NAME
=
'
book
'
const
STORE_CONFIG
=
{
name
:
'
book.db
'
}
const
STORE_CONFIG
=
{
name
:
'
book.db
'
,
securityLevel
:
1
}
const
SQL_CREATE_TABLE
=
'
CREATE TABLE IF NOT EXISTS book(id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL, introduction TEXT NOT NULL)
'
let
rdbStore
:
relationalStore
.
RdbStore
=
undefined
...
...
zh-cn/application-dev/application-models/service-widget-overview.md
浏览文件 @
37e2d8b7
...
...
@@ -56,7 +56,7 @@ ArkTS卡片与JS卡片具备不同的实现原理及特征,在场景能力上
推荐在开发需求需要动态能力的卡片时使用ArkTS卡片,因为它拥有更加丰富的能力和适应更多的场景,能够提高效率并实现动态化。但如果只需要静态展示卡片,可以考虑使用JS卡片。
# 相关实例
#
#
相关实例
针对Stage模型卡片提供方的开发,有以下相关实例可供参考:
...
...
zh-cn/application-dev/key-features/multi-device-app-dev/page-development-intro.md
浏览文件 @
37e2d8b7
...
...
@@ -23,7 +23,7 @@
## 相关
示
例
## 相关
实
例
[
OpenHarmony应用示例
](
https://gitee.com/openharmony/applications_app_samples/tree/master/code/SuperFeature/MultiDeviceAppDev
)
中提供了如下一多示例,感兴趣的开发者可以自行下载、运行及查看效果。
...
...
zh-cn/application-dev/reference/apis/js-apis-ability-featureAbility.md
浏览文件 @
37e2d8b7
...
...
@@ -707,7 +707,7 @@ let connectId = featureAbility.connectAbility(
);
featureAbility
.
disconnectAbility
(
connectId
).
then
((
data
)
=>
{
console
.
log
(
'
data: ${data)}
'
;
console
.
log
(
'
data: ${data)}
'
)
}).
catch
((
error
)
=>
{
console
.
error
(
'
featureAbilityTest result errCode : ${error.code}
'
);
});
...
...
zh-cn/application-dev/reference/apis/js-apis-app-ability-appManager.md
浏览文件 @
37e2d8b7
...
...
@@ -298,7 +298,7 @@ appManager.getRunningProcessInformation((err, data) => {
});
```
## appManager.isSharedBundleRunning
## appManager.isSharedBundleRunning
<sup>10+</sup>
isSharedBundleRunning(bundleName: string, versionCode: number): Promise
\<
boolean>;
...
...
@@ -323,11 +323,20 @@ isSharedBundleRunning(bundleName: string, versionCode: number): Promise\<boolean
| -------- | -------- |
| Promise
\<
boolean> | Promise对象。返回true表示共享库正在使用,返回false表示共享库不在使用。 |
**错误码**
:
| 错误码ID | 错误信息 |
| 16000050 | Internal error. |
以上错误码详细介绍请参考
[
errcode-ability
](
../errorcodes/errorcode-ability.md
)
。
**示例:**
```
ts
import
appManager
from
'
@ohos.app.ability.appManager
'
;
const
bundleName
=
"
this is a bundleName
"
;
const
versionCode
=
1
;
appManager
.
isSharedBundleRunning
(
bundleName
,
versionCode
).
then
((
data
)
=>
{
console
.
log
(
'
The shared bundle running is: ${JSON.stringify(data)}
'
);
}).
catch
((
error
)
=>
{
...
...
@@ -335,7 +344,7 @@ appManager.isSharedBundleRunning(bundleName, versionCode).then((data) => {
});
```
## appManager.isSharedBundleRunning
## appManager.isSharedBundleRunning
<sup>10+</sup>
isSharedBundleRunning(bundleName: string, versionCode: number, callback: AsyncCallback
\<
boolean>): void;
...
...
@@ -353,18 +362,22 @@ isSharedBundleRunning(bundleName: string, versionCode: number, callback: AsyncCa
| --------- | ---------------------------------------- | ---- | -------------- |
| bundleName | string | 是 | 表示要查询的共享库包名。 |
| versionCode | number | 是 | 表示要查询的共享库版本号。 |
|AsyncCallback
\<
boolean>> | 回调函数。返回true表示共享库正在使用,返回false表示共享库不在使用。 |
**
参数:**
**
错误码**
:
| 类型 | 说明 |
| -------- | -------- |
|AsyncCallback
\<
boolean>> | 回调函数。返回true表示共享库正在使用,返回false表示共享库不在使用。 |
| 错误码ID | 错误信息 |
| 16000050 | Internal error. |
以上错误码详细介绍请参考
[
errcode-ability
](
../errorcodes/errorcode-ability.md
)
。
**示例:**
```
ts
import
appManager
from
'
@ohos.app.ability.appManager
'
;
const
bundleName
=
"
this is a bundleName
"
;
const
versionCode
=
1
;
appManager
.
isSharedBundleRunning
(
bundleName
,
versionCode
,
(
err
,
data
)
=>
{
if
(
err
)
{
console
.
error
(
'
err: ${JSON.stringify(err)}
'
);
...
...
@@ -749,7 +762,7 @@ killProcessWithAccount(bundleName: string, accountId: number): Promise\<void\>
>
> 当accountId为当前用户时,不需要校验ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS权限。
**需要权限**
:ohos.permission.CLEAN_BACKGROUND_PROCESSES
,
ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS
**需要权限**
:ohos.permission.CLEAN_BACKGROUND_PROCESSES
,
ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS
**系统能力**
:SystemCapability.Ability.AbilityRuntime.Core
...
...
@@ -799,7 +812,7 @@ killProcessWithAccount(bundleName: string, accountId: number, callback: AsyncCal
>
> 当accountId为当前用户时,不需要校验ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS权限。
**需要权限**
:ohos.permission.CLEAN_BACKGROUND_PROCESSES
,
ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS
**需要权限**
:ohos.permission.CLEAN_BACKGROUND_PROCESSES
,
ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS
**系统能力**
:SystemCapability.Ability.AbilityRuntime.Core
...
...
zh-cn/application-dev/reference/apis/js-apis-app-ability-appRecovery.md
浏览文件 @
37e2d8b7
...
...
@@ -173,6 +173,8 @@ saveAppState(context?: UIAbilityContext): boolean;
```
ts
import
appRecovery
from
'
@ohos.app.ability.appRecovery
'
;
import
errorManager
from
'
@ohos.app.ability.errorManager
'
;
let
observer
=
{
onUnhandledException
(
errorMsg
)
{
console
.
log
(
'
onUnhandledException, errorMsg:
'
,
errorMsg
);
...
...
zh-cn/application-dev/reference/apis/js-apis-app-ability-dialogRequest.md
浏览文件 @
37e2d8b7
...
...
@@ -298,7 +298,7 @@ getRequestCallback(want: Want): RequestCallback
**系统能力**
:SystemCapability.Ability.AbilityRuntime.Core
|
参数名
| 值 | 说明 |
|
名称
| 值 | 说明 |
| ------------ | ------------------ | ---------------------- |
| RESULT_OK | 0 | 表示成功。 |
| RESULT_CANCEL | 1 | 表示失败。 |
...
...
@@ -324,7 +324,7 @@ setRequestResult(result: RequestResult): void;
设置请求结果
**系统能力**
:SystemCapability.Ability.AbilityRuntime.Core
**系统能力**
:SystemCapability.Ability.AbilityRuntime.
Ability
Core
**参数:**
...
...
zh-cn/application-dev/reference/apis/js-apis-app-ability-extensionAbility.md
浏览文件 @
37e2d8b7
...
...
@@ -7,4 +7,10 @@ ExtensionAbility是特定场景扩展能力的基类,继承自[Ability](js-api
> 本模块首批接口从API version 9 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
> 本模块接口仅可在Stage模型下使用。
## 导入模块
```
ts
import
ExtensionAbility
from
'
@ohos.app.ability.ExtensionAbility
'
;
```
**系统能力**
:SystemCapability.Ability.AbilityRuntime.AbilityCore
\ No newline at end of file
zh-cn/application-dev/reference/apis/js-apis-app-ability-missionManager.md
浏览文件 @
37e2d8b7
...
...
@@ -946,7 +946,7 @@ clearAllMissions(): Promise<void>;
import
missionManager
from
'
@ohos.app.ability.missionManager
'
;
try
{
missionManager
.
clearAllMissions
(
bundleName
).
then
((
data
)
=>
{
missionManager
.
clearAllMissions
().
then
((
data
)
=>
{
console
.
info
(
'
clearAllMissions successfully. Data: ${JSON.stringify(data)}
'
);
}).
catch
(
err
=>
{
console
.
error
(
'
clearAllMissions failed: ${err.message}
'
);
...
...
zh-cn/application-dev/reference/apis/js-apis-app-ability-quickFixManager.md
浏览文件 @
37e2d8b7
...
...
@@ -257,7 +257,7 @@ revokeQuickFix(bundleName: string, callback: AsyncCallback\<void>): void;
撤销快速修复的接口,使用callback方式返回结果。
**需要权限**
:ohos.permission.INSTALL_BUNDLE
与
ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
**需要权限**
:ohos.permission.INSTALL_BUNDLE
,
ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
**系统能力**
:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.QuickFix
...
...
@@ -302,7 +302,7 @@ revokeQuickFix(bundleName: string): Promise\<void>;
撤销快速修复的接口,使用Promise方式返回结果。
**需要权限**
:ohos.permission.INSTALL_BUNDLE
与
ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
**需要权限**
:ohos.permission.INSTALL_BUNDLE
,
ohos.permission.GET_BUNDLE_INFO_PRIVILEGED
**系统能力**
:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.QuickFix
...
...
zh-cn/application-dev/reference/apis/js-apis-app-ability-startOptions.md
浏览文件 @
37e2d8b7
...
...
@@ -19,7 +19,7 @@ import StartOptions from '@ohos.app.ability.StartOptions';
| 名称 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
|
[
windowMode
](
js-apis-app-ability-abilityConstant.md#abilityconstantwindowmode
)
| number | 否 | 窗口模式。 |
|
[
windowMode
](
js-apis-app-ability-abilityConstant.md#abilityconstantwindowmode
)
| number | 否 | 窗口模式。
<br>
**系统API**
:该接口为系统接口,三方应用不支持调用。
|
| displayId | number | 否 | 屏幕ID。默认是0,表示当前屏幕。 |
**示例:**
...
...
zh-cn/application-dev/reference/apis/js-apis-app-ability-uiAbility.md
浏览文件 @
37e2d8b7
...
...
@@ -668,11 +668,12 @@ onRemoteStateChange(callback: OnRemoteStateChangeCallback): void;
```
ts
import
UIAbility
from
'
@ohos.app.ability.UIAbility
'
;
import
window
from
'
@ohos.window
'
;
let
caller
;
let
dstDeviceId
:
string
;
export
default
class
MainAbility
extends
UIAbility
{
onWindowStageCreate
(
windowStage
:
W
indow
.
WindowStage
)
{
onWindowStageCreate
(
windowStage
:
w
indow
.
WindowStage
)
{
this
.
context
.
startAbilityByCall
({
bundleName
:
'
com.example.myservice
'
,
abilityName
:
'
MainUIAbility
'
,
...
...
@@ -688,7 +689,7 @@ onRemoteStateChange(callback: OnRemoteStateChangeCallback): void;
}
}).
catch
((
err
)
=>
{
console
.
log
(
'
Caller GetCaller error, error.code: ${JSON.stringify(err.code)}, error.message: ${JSON.stringify(err.message)}
'
);
})
;
})
}
}
```
...
...
zh-cn/application-dev/reference/apis/js-apis-app-ability-want.md
浏览文件 @
37e2d8b7
...
...
@@ -176,13 +176,14 @@ import Want from '@ohos.app.ability.Want';
bundleName: 'com.example.myapplication1',
abilityName: 'ServiceExtensionAbility',
};
context.startAbility(want, (err) => {
console.error(`Failed to startAbility. Code: ${err.code}, message: ${err.message}`);
});
```
```ts
// (2) 该ServiceExtension去启动另一个UIAbility2,并在启动的时候携带参数ability.params.backToOtherMissionStack为true
let context
= ...
; // ServiceExtensionContext
let context ; // ServiceExtensionContext
let want = {
bundleName: 'com.example.myapplication2',
abilityName: 'MainAbility',
...
...
zh-cn/application-dev/reference/apis/js-apis-app-ability-wantConstant.md
浏览文件 @
37e2d8b7
...
...
@@ -25,7 +25,7 @@ want的Params操作的常量。
| DLP_PARAMS_MODULE_NAME | ohos.dlp.params.moduleName | 指示DLP模块名称的参数的操作。
<br>
**系统API**
:该接口为系统接口,三方应用不支持调用。 |
| DLP_PARAMS_ABILITY_NAME | ohos.dlp.params.abilityName | 指示DLP能力名称的参数的操作。
<br>
**系统API**
:该接口为系统接口,三方应用不支持调用。 |
| DLP_PARAMS_INDEX | ohos.dlp.params.index | 指示DLP索引参数的操作。
<br>
**系统API**
:该接口为系统接口,三方应用不支持调用。 |
| ABILITY_BACK_TO_OTHER_MISSION_STACK | ability.params.backToOtherMissionStack | 表示是否支持跨任务链返回。
<br>
**系统API**
:该接口为系统接口,三方应用不支持调用。
|
| ABILITY_BACK_TO_OTHER_MISSION_STACK | ability.params.backToOtherMissionStack | 表示是否支持跨任务链返回。 |
| ABILITY_RECOVERY_RESTART
<sup>
10+
</sup>
| ohos.ability.params.abilityRecoveryRestart | 指示当前Ability是否发生了故障恢复重启。 |
| CONTENT_TITLE_KEY
<sup>
10+
</sup>
| ohos.extra.param.key.contentTitle | 指示原子化服务支持分享标题的参数的操作。 |
| SHARE_ABSTRACT_KEY
<sup>
10+
</sup>
| ohos.extra.param.key.shareAbstract | 指示原子化服务支持分享内容的参数的操作。 |
...
...
zh-cn/application-dev/reference/apis/js-apis-app-form-formBindingData.md
浏览文件 @
37e2d8b7
...
...
@@ -36,7 +36,6 @@ FormBindingData相关描述。
| data | Object | 是 | js卡片要展示的数据。可以是包含若干键值对的Object或者 json 格式的字符串。|
| proxies
<sup>
10+
</sup>
| Array
<
[
ProxyData
](
#proxydata
)
>
| 否 | 卡片代理刷新的订阅信息,默认为空数组。|
## createFormBindingData
createFormBindingData(obj?: Object | string): FormBindingData
...
...
@@ -75,4 +74,15 @@ try {
}
catch
(
error
)
{
console
.
error
(
`catch error, code:
${
error
.
code
}
, message:
${
error
.
message
}
`
);
}
```
\ No newline at end of file
```
## ProxyData
定义表单代理数据。
**系统能力**
:SystemCapability.Ability.Form
| 名称 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| key | string | 是 | 代理的密钥。值取决于数据发布者。|
| subscriberId | string | 否 | 订阅者ID。值取决于数据发布者。默认值为当前卡片ID。|
\ No newline at end of file
zh-cn/application-dev/reference/apis/js-apis-app-form-formHost.md
浏览文件 @
37e2d8b7
...
...
@@ -2144,6 +2144,8 @@ acquireFormData(formId: string, callback: AsyncCallback<{[key: string]: Object}>
| 错误码ID | 错误信息 |
| -------- | -------- |
| 201 | Permissions denied. |
| 401 | If the input parameter is not valid parameter. |
| 16500050 | An IPC connection error happened. |
| 16500060 | A service connection error happened, please try again later. |
| 16500100 | Failed to obtain the configuration information. |
...
...
@@ -2196,6 +2198,8 @@ acquireFormData(formId: string): Promise<{[key: string]: Object}>;
| 错误码ID | 错误信息 |
| -------- | -------- |
| 201 | Permissions denied. |
| 401 | If the input parameter is not valid parameter. |
| 16500050 | An IPC connection error happened. |
| 16500060 | A service connection error happened, please try again later. |
| 16500100 | Failed to obtain the configuration information. |
...
...
@@ -2246,9 +2250,14 @@ getRunningFormInfosByFilter(formProviderFilter: formInfo.FormProviderFilter): Pr
| 错误码ID | 错误信息 |
| -------- | -------- |
| 201 | Permissions denied. |
| 202 | The application is not a system application. |
| 401 | If the input parameter is not valid parameter. |
| 16500050 | An IPC connection error happened. |
| 16500100 | Failed to obtain the configuration information. |
| 16501000 | An internal functional error occurred. |
```
ts
import
formHost
from
'
@ohos.app.form.formHost
'
;
...
...
@@ -2271,7 +2280,7 @@ try {
## getRunningFormInfosByFilter<sup>10+</sup>
getRunningFormInfosByFilter(formProviderFilter: formInfo.FormProviderFilter, callback: AsyncCallback
<
Array
<
formInfo.FormInfo
>>
): void
getRunningFormInfosByFilter(formProviderFilter: formInfo.FormProviderFilter, callback: AsyncCallback
<
Array
<
formInfo.
Running
FormInfo
>>
): void
根据提供方信息查询卡片已有的使用方列表信息。使用callback异步回调。
...
...
@@ -2283,7 +2292,7 @@ getRunningFormInfosByFilter(formProviderFilter: formInfo.FormProviderFilter, cal
| 参数名 | 类型 | 必填 | 说明 |
| ----------- | --------------- | ---- | -------------------------------- |
| formProviderFilter |
formInfo.FormProviderFilter
[
formInfo.FormProviderFilter
](
js-apis-app-form-formInfo.md#formProviderFilter
)
| 是 | 卡片提供方应用信息。 |
| formProviderFilter |
[
formInfo.FormProviderFilter
](
js-apis-app-form-formInfo.md#formProviderFilter
)
| 是 | 卡片提供方应用信息。 |
| callback | AsyncCallback
<
Array
<
[formInfo.RunningFormInfo](js-apis-app-form-formInfo.md)
>>
| 是 | 回调函数。返回查询到的使用方列表信息,error为undefined,data为查询到的使用方列表信息;否则为错误对象。 |
**错误码:**
...
...
@@ -2292,9 +2301,14 @@ getRunningFormInfosByFilter(formProviderFilter: formInfo.FormProviderFilter, cal
| 错误码ID | 错误信息 |
| -------- | -------- |
| 201 | Permissions denied. |
| 202 | The application is not a system application. |
| 401 | If the input parameter is not valid parameter. |
| 16500050 | An IPC connection error happened. |
| 16500100 | Failed to obtain the configuration information. |
| 16501000 | An internal functional error occurred. |
```
ts
import
formHost
from
'
@ohos.app.form.formHost
'
;
...
...
@@ -2319,7 +2333,8 @@ try {
## getRunningFormInfoById<sup>10+</sup>
getRunningFormInfoById(formId: string): Promise
<
Array
<
formInfo.RunningFormInfo
>>
function getRunningFormInfoById(formId: string): Promise
<
formInfo.RunningFormInfo
>
根据formId查询卡片已有的使用方列表信息。使用Promise异步回调。
...
...
@@ -2337,7 +2352,7 @@ getRunningFormInfoById(formId: string): Promise<Array<formInfo.RunningForm
| 类型 | 说明 |
| ------------------- | ------------------------- |
| Promise
<
Array
<
formInfo.RunningFormInfo[formInfo.RunningFormInfo](js-apis-app-form-formInfo.md)
>
>
| Promise对象,返回查询到的使用方列表信息。 |
| Promise
<
[formInfo.RunningFormInfo](js-apis-app-form-formInfo.md)
>
| Promise对象,返回查询到的使用方列表信息。 |
**错误码:**
...
...
@@ -2345,9 +2360,14 @@ getRunningFormInfoById(formId: string): Promise<Array<formInfo.RunningForm
| 错误码ID | 错误信息 |
| -------- | -------- |
| 201 | Permissions denied. |
| 202 | The application is not a system application. |
| 401 | If the input parameter is not valid parameter. |
| 16500050 | An IPC connection error happened. |
| 16500100 | Failed to obtain the configuration information. |
| 16501000 | An internal functional error occurred. |
```
ts
import
formHost
from
'
@ohos.app.form.formHost
'
;
let
formId
=
'
12400633174999288
'
;
...
...
@@ -2364,7 +2384,7 @@ try {
## getRunningFormInfoById<sup>10+</sup>
getRunningFormInfoById(formId: string, callback: AsyncCallback
<
Array
<
formInfo.FormInfo
>
>
): void
getRunningFormInfoById(formId: string, callback: AsyncCallback
<
formInfo.RunningFormInfo
>
): void
根据提供方信息查询卡片已有的使用方列表信息。使用callback异步回调。
...
...
@@ -2377,7 +2397,7 @@ getRunningFormInfoById(formId: string, callback: AsyncCallback<Array<formI
| 参数名 | 类型 | 必填 | 说明 |
| ----------- | --------------- | ---- | -------------------------------- |
| formId | string | 是 | 卡片标识。 |
| callback | AsyncCallback
<
Array
<
[formInfo.RunningFormInfo](js-apis-app-form-formInfo.md)
>
>
| 是 | 回调函数。返回查询到的使用方列表信息,error为undefined,data为查询到的使用方列表信息;否则为错误对象。 |
| callback | AsyncCallback
<
[formInfo.RunningFormInfo](js-apis-app-form-formInfo.md)
>
| 是 | 回调函数。返回查询到的使用方列表信息,error为undefined,data为查询到的使用方列表信息;否则为错误对象。 |
**错误码:**
...
...
@@ -2385,7 +2405,11 @@ getRunningFormInfoById(formId: string, callback: AsyncCallback<Array<formI
| 错误码ID | 错误信息 |
| -------- | -------- |
| 201 | Permissions denied. |
| 202 | The application is not a system application. |
| 401 | If the input parameter is not valid parameter. |
| 16500050 | An IPC connection error happened. |
| 16500100 | Failed to obtain the configuration information. |
| 16501000 | An internal functional error occurred. |
```
ts
...
...
@@ -2404,3 +2428,143 @@ try {
console
.
error
(
`catch error, code:
${
error
.
code
}
, message:
${
error
.
message
}
`
);
}
```
## on('notifyVisible')<sup>10+</sup>
on(type: 'notifyVisible', observerCallback: Callback
<
Array
<
[formInfo.RunningFormInfo](js-apis-app-form-formInfo.md)
>>
, bundleName?: string): void
订阅通知卡片可见的事件。触发通知卡片可见场景为:
调用notifyVisibleForms接口通知对应卡片可见性变更为可见状态
**需要权限**
:ohos.permission.REQUIRE_FORM
**系统能力**
:SystemCapability.Ability.Form
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
| type | string | 是 | 仅允许填写'notifyVisible',表示订阅通知卡片可见的事件。 |
| callback | Callback
<
Array
<
[formInfo.RunningFormInfo](js-apis-app-form-formInfo.md)
>>
| 是 | 回调函数。返回订阅通知卡片可见的RunningFormInfo。 |
| bundleName | string | 否 | 指定卡片使用方的bundleName,用于订阅卡片在该使用方的可见状态变更事件。 |
**示例:**
```
ts
import
formHost
from
'
@ohos.app.form.formHost
'
;
let
bundleName
=
'
ohos.samples.FormApplication
'
;
let
callback
=
function
(
data
)
{
console
.
log
(
'
form change visibility, data: ${JSON.stringify(data)
'
);
}
formHost
.
on
(
'
notifyVisible
'
,
callback
);
formHost
.
on
(
'
notifyVisible
'
,
callback
,
bundleName
);
```
## off('notifyVisible')<sup>10+</sup>
off(type: "notifyVisible", observerCallback?: Callback
<
Array
<
[formInfo.RunningFormInfo](js-apis-app-form-formInfo.md)
>>
, bundleName?: string): void
取消订阅通知卡片可见的事件。
**需要权限**
:ohos.permission.REQUIRE_FORM
**系统能力**
:SystemCapability.Ability.Form
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
| type | string | 是 | 仅允许填写'notifyVisible',表示取消订阅通知卡片为可见的事件。 |
| callback | Callback
<
Array
<
[formInfo.RunningFormInfo](js-apis-app-form-formInfo.md)
>>
| 否 | 入参,注册时注册进去的callback。缺省时,表示注销对应已注册订阅的回调。
<br>
需与对应on('notifyVisible')的callback一致。 |
| bundleName | string | 否 | 指定卡片使用方的bundleName。
<br>
填写该参数时,与注册时填写bundleName的on接口对应。
<br>
用于订阅卡片在该使用方的可见状态变更事件。 |
**示例:**
```
ts
import
formHost
from
'
@ohos.app.form.formHost
'
;
let
bundleName
=
'
ohos.samples.FormApplication
'
;
let
callback
=
function
(
data
)
{
console
.
log
(
'
form change visibility, data: ${JSON.stringify(data)
'
);
}
formHost
.
off
(
'
notifyVisible
'
,
callback
);
formHost
.
off
(
'
notifyVisible
'
,
callback
,
bundleName
);
```
> **说明:**
> on('notifyVisible', callback)与off('notifyVisible', callback)相对应;
> on('notifyVisible', callback, bundleName)与off('notifyVisible', callback, bundleName)相对应;
> 订阅(on)只能由自己对应的取消订阅接口(off)取消。
## on('notifyInvisible')<sup>10+</sup>
on(type: 'notifyInvisible', observerCallback: Callback
<
Array
<
[formInfo.RunningFormInfo](js-apis-app-form-formInfo.md)
>
>, bundleName?: string): void
订阅通知卡片不可见的事件。触发通知卡片不可见场景为:
调用notifyInvisibleForms接口通知对应卡片可见性变更为不可见状态
**需要权限**
:ohos.permission.REQUIRE_FORM
**系统能力**
:SystemCapability.Ability.Form
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
| type | string | 是 | 仅允许填写'notifyInvisible',表示订阅卡片不可见的事件。 |
| callback | Callback
<
Array
<
[formInfo.RunningFormInfo](js-apis-app-form-formInfo.md)
>>
| 是 | 回调函数。返回订阅通知卡片不可见的RunningFormInfo。 |
| bundleName | string | 否 | 指定卡片使用方的bundleName,用于订阅卡片在该使用方的可见状态变更事件。 |
**示例:**
```
ts
import
formHost
from
'
@ohos.app.form.formHost
'
;
let
bundleName
=
'
ohos.samples.FormApplication
'
;
let
callback
=
function
(
data
)
{
console
.
log
(
'
form change invisibility, data: ${JSON.stringify(data)
'
);
}
formHost
.
on
(
'
notifyInvisible
'
,
callback
);
formHost
.
on
(
'
notifyInvisible
'
,
callback
,
bundleName
);
```
## off('notifyInvisible')<sup>10+</sup>
off(type: "notifyInvisible", observerCallback?: Callback
<
Array
<
[formInfo.RunningFormInfo](js-apis-app-form-formInfo.md)>
>
, bundleName?: string): void
取消订阅通知卡片不可见事件。
**需要权限**
:ohos.permission.REQUIRE_FORM
**系统能力**
:SystemCapability.Ability.Form
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
| type | string | 是 | 仅允许填写'notifyInvisible',表示卡片可见性变更为不可见。 |
| callback | Callback
<
Array
<
[formInfo.RunningFormInfo](js-apis-app-form-formInfo.md)
>>
| 否 | 入参,注册时注册进去的callback。缺省时,表示注销对应已注册事件回调。
<br/>
需与对应on('notifyVisible')的callback一致。 |
| bundleName | string | 否 | 指定卡片使用方的bundleName。
<br>
填写该参数时,与注册时填写bundleName的on接口对应。
<br>
用于订阅卡片在该使用方的可见状态变更事件。 |
**示例:**
```
ts
import
formHost
from
'
@ohos.app.form.formHost
'
;
let
bundleName
=
'
ohos.samples.FormApplication
'
;
let
callback
=
function
(
data
)
{
console
.
log
(
'
form change invisibility, data: ${JSON.stringify(data)
'
);
}
formHost
.
off
(
'
notifyInvisible
'
,
callback
);
formHost
.
off
(
'
notifyInvisible
'
,
callback
,
bundleName
);
```
> **说明:**
> on('notifyInvisible', callback)与off('notifyInvisible', callback)相对应;
> on('notifyInvisible', callback, bundleName)与off('notifyInvisible', callback, bundleName)相对应;
> 订阅(on)只能由自己对应的取消订阅接口(off)取消。
\ No newline at end of file
zh-cn/application-dev/reference/apis/js-apis-app-form-formInfo.md
浏览文件 @
37e2d8b7
...
...
@@ -18,8 +18,6 @@ import formInfo from '@ohos.app.form.formInfo';
**系统能力**
:SystemCapability.Ability.Form
**系统API**
: 此接口为系统接口,三方应用不支持调用。
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ----------- | -------- | -------- | -------------------- | ------------------------------------------------------------ |
| bundleName | string | 是 | 否 | 卡片所属包的Bundle名称。 |
...
...
@@ -27,6 +25,7 @@ import formInfo from '@ohos.app.form.formInfo';
| abilityName | string | 是 | 否 | 卡片所属的Ability名称。 |
| name | string | 是 | 否 | 卡片名称。 |
| description | string | 是 | 否 | 卡片描述。 |
| descriptionId | number | 是 | 否 | 卡片描述id。 |
| type |
[
FormType
](
#formtype
)
| 是 | 否 | 卡片类型。当前支持JS卡片。 |
| jsComponentName | string | 是 | 否 | js卡片的组件名。 |
| colorMode |
[
ColorMode
](
#colormode
)
| 是 | 否 | 卡片颜色模式。 |
...
...
@@ -102,7 +101,7 @@ import formInfo from '@ohos.app.form.formInfo';
| HEIGHT_KEY | 'ohos.extra.param.key.form_height' | 卡片高度。 |
| TEMPORARY_KEY | 'ohos.extra.param.key.form_temporary' | 临时卡片。 |
| ABILITY_NAME_KEY | 'ohos.extra.param.key.ability_name' | ability名称。 |
| DEVICE_ID_KEY | 'ohos.extra.param.key.device_id'
<br>
**系统API**
: 此接口为系统接口,三方应用不支持调用。 | 设备标识。
|
| DEVICE_ID_KEY | 'ohos.extra.param.key.device_id'
| 设备标识。
<br>
**系统API**
: 此接口为系统接口,三方应用不支持调用。
|
| BUNDLE_NAME_KEY | 'ohos.extra.param.key.bundle_name' | 指示指定要获取的捆绑Bundle名称的键。 |
| LAUNCH_REASON_KEY
<sup>
10+
</sup>
| 'ohos.extra.param.key.form_launch_reason' | 卡片创建原因。 |
| PARAM_FORM_CUSTOMIZE_KEY
<sup>
10+
</sup>
| 'ohos.extra.param.key.form_customize' | 自定义数据。 |
...
...
@@ -128,9 +127,9 @@ import formInfo from '@ohos.app.form.formInfo';
**系统能力**
:SystemCapability.Ability.Form
| 名称 | 类型 | 说明 |
| ----------- | ---- | ------------ |
| moduleName | string | 选填。仅保留moduleName与提供值相符的卡片信息。
<br>
未填写时则不通过moduleName进行过滤。 |
| 名称 | 类型 |
必填 |
说明 |
| ----------- | ---- | ------------ |
------------ |
| moduleName | string |
否 |
选填。仅保留moduleName与提供值相符的卡片信息。
<br>
未填写时则不通过moduleName进行过滤。 |
## VisibilityType
...
...
@@ -140,7 +139,7 @@ import formInfo from '@ohos.app.form.formInfo';
| 名称 | 值 | 说明 |
| ----------- | ---- | ------------ |
| UNKNOWN | 0 | 表示卡片为未知。 |
| UNKNOWN
<sup>
10+
</sup>
| 0 | 表示卡片为未知。 |
| FORM_VISIBLE | 1 | 表示卡片为可见。 |
| FORM_INVISIBLE | 2 | 表示卡片为不可见。 |
...
...
@@ -150,6 +149,8 @@ import formInfo from '@ohos.app.form.formInfo';
**系统能力**
:SystemCapability.Ability.Form
**系统API**
: 此接口为系统接口,三方应用不支持调用。
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ----------- | -------- | -------- | -------------------- | ------------------------------------------------------------ |
| formId | string | 是 | 否 | 卡片标识。 |
...
...
zh-cn/application-dev/reference/apis/js-apis-app-form-formProvider.md
浏览文件 @
37e2d8b7
...
...
@@ -539,7 +539,7 @@ isRequestPublishFormSupported(callback: AsyncCallback<boolean>): void
| 错误码ID | 错误信息 |
| -------- | -------- |
| 202 |
T
he application is not a system application. |
| 202 |
If t
he application is not a system application. |
| 401 | If the input parameter is not valid parameter. |
| 16500050 | An IPC connection error happened. |
| 16501000 | An internal functional error occurred. |
...
...
@@ -602,7 +602,7 @@ isRequestPublishFormSupported(): Promise<boolean>
| 错误码ID | 错误信息 |
| -------- | -------- |
| 202 |
T
he application is not a system application. |
| 202 |
If t
he application is not a system application. |
| 16500050 | An IPC connection error happened. |
| 16501000 | An internal functional error occurred. |
...
...
zh-cn/application-dev/reference/apis/js-apis-application-StaticSubscriberExtensionContext.md
浏览文件 @
37e2d8b7
...
...
@@ -9,6 +9,12 @@ StaticSubscriberExtensionContext模块提供StaticSubscriberExtensionAbility具
> 本模块首批接口从API version 10开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
> 本模块接口仅可在Stage模型下使用。
## 导入模块
```
ts
import
StaticSubscriberExtensionContext
from
'
@ohos.application.StaticSubscriberExtensionContext
'
```
## 使用说明
在使用StaticSubscriberExtensionContext的功能前,需要通过StaticSubscriberExtensionAbility获取。
...
...
zh-cn/application-dev/reference/apis/js-apis-application-appManager.md
浏览文件 @
37e2d8b7
...
...
@@ -404,7 +404,7 @@ killProcessWithAccount(bundleName: string, accountId: number): Promise\<void\>
>
> 当accountId为当前用户时,不需要校验ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS权限。
**需要权限**
:ohos.permission.CLEAN_BACKGROUND_PROCESSES
,
ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS
**需要权限**
:ohos.permission.CLEAN_BACKGROUND_PROCESSES
,
ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS
**系统能力**
:SystemCapability.Ability.AbilityRuntime.Core
...
...
@@ -446,7 +446,7 @@ killProcessWithAccount(bundleName: string, accountId: number, callback: AsyncCal
**系统API**
: 此接口为系统接口,三方应用不支持调用。
**需要权限**
:ohos.permission.CLEAN_BACKGROUND_PROCESSES
,
ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS
**需要权限**
:ohos.permission.CLEAN_BACKGROUND_PROCESSES
,
ohos.permission.INTERACT_ACROSS_LOCAL_ACCOUNTS
**参数:**
...
...
zh-cn/application-dev/reference/apis/js-apis-application-staticSubscriberExtensionAbility.md
浏览文件 @
37e2d8b7
...
...
@@ -15,11 +15,13 @@ import StaticSubscriberExtensionAbility from '@ohos.application.StaticSubscriber
## 属性
**系统能力**
:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.AbilityCore
**系统能力**
:以下各项对应的系统能力均为SystemCapability.Ability.AbilityRuntime.Core
**系统API**
:该接口为系统接口,三方应用不支持调用。
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ------- | ------------------------------------------------------------ | ---- | ---- | -------- |
| context |
[
StaticSubscriberExtensionContext
](
js-apis-application-StaticSubscriberExtensionContext.md
)
| 是 | 否 | 上下文。 |
| context
<sup>
10+
</sup>
|
[
StaticSubscriberExtensionContext
](
js-apis-application-StaticSubscriberExtensionContext.md
)
| 是 | 否 | 上下文。 |
## StaticSubscriberExtensionAbility.onReceiveEvent
...
...
zh-cn/application-dev/reference/apis/js-apis-arkui-UIContext.md
浏览文件 @
37e2d8b7
...
...
@@ -875,6 +875,382 @@ router.replaceUrl({
});
```
### pushNamedRoute
pushNamedRoute(options: NamedRouterOptions): Promise
<
void
>
跳转到指定的命名路由页面。
**系统能力:**
SystemCapability.ArkUI.ArkUI.Full
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ------------------------------- | ---- | --------- |
| options |
[
NamedRouterOptions
](
js-apis-router.md#namedrouteroptions10
)
| 是 | 跳转页面描述信息。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | --------- |
| Promise
<
void
>
| 异常返回结果。 |
**错误码:**
以下错误码的详细介绍请参见
[
ohos.router(页面路由)
](
../errorcodes/errorcode-router.md
)
错误码。
| 错误码ID | 错误信息 |
| --------- | ------- |
| 100001 | if UI execution context not found. |
| 100003 | if the pages are pushed too much. |
| 100004 | if the named route is not exist. |
**示例:**
```
ts
let
router
=
uiContext
.
getRouter
();
router
.
pushNamedRoute
({
name
:
'
myPage
'
,
params
:
{
data1
:
'
message
'
,
data2
:
{
data3
:
[
123
,
456
,
789
]
}
}
})
.
then
(()
=>
{
// success
})
.
catch
(
err
=>
{
console
.
error
(
`pushNamedRoute failed, code is
${
err
.
code
}
, message is
${
err
.
message
}
`
);
})
```
### pushNamedRoute
pushNamedRoute(options: NamedRouterOptions, callback: AsyncCallback
<
void
>
): void
跳转到指定的命名路由页面。
**系统能力:**
SystemCapability.ArkUI.ArkUI.Full
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ------------------------------- | ---- | --------- |
| options |
[
NamedRouterOptions
](
js-apis-router.md#namedrouteroptions10
)
| 是 | 跳转页面描述信息。 |
| callback | AsyncCallback
<
void
>
| 是 | 异常响应回调。 |
**错误码:**
以下错误码的详细介绍请参见
[
ohos.router(页面路由)
](
../errorcodes/errorcode-router.md
)
错误码。
| 错误码ID | 错误信息 |
| --------- | ------- |
| 100001 | if UI execution context not found. |
| 100003 | if the pages are pushed too much. |
| 100004 | if the named route is not exist. |
**示例:**
```
ts
let
router
=
uiContext
.
getRouter
();
router
.
pushNamedRoute
({
name
:
'
myPage
'
,
params
:
{
data1
:
'
message
'
,
data2
:
{
data3
:
[
123
,
456
,
789
]
}
}
},
(
err
)
=>
{
if
(
err
)
{
console
.
error
(
`pushNamedRoute failed, code is
${
err
.
code
}
, message is
${
err
.
message
}
`
);
return
;
}
console
.
info
(
'
pushNamedRoute success
'
);
})
```
### pushNamedRoute
pushNamedRoute(options: NamedRouterOptions, mode: RouterMode): Promise
<
void
>
跳转到指定的命名路由页面。
**系统能力:**
SystemCapability.ArkUI.ArkUI.Full
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ------------------------------- | ---- | ---------- |
| options |
[
NamedRouterOptions
](
js-apis-router.md#namedrouteroptions10
)
| 是 | 跳转页面描述信息。 |
| mode |
[
RouterMode
](
js-apis-router.md#routermode9
)
| 是 | 跳转页面使用的模式。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | --------- |
| Promise
<
void
>
| 异常返回结果。 |
**错误码:**
以下错误码的详细介绍请参见
[
ohos.router(页面路由)
](
../errorcodes/errorcode-router.md
)
错误码。
| 错误码ID | 错误信息 |
| --------- | ------- |
| 100001 | if UI execution context not found. |
| 100003 | if the pages are pushed too much. |
| 100004 | if the named route is not exist. |
**示例:**
```
ts
let
router
=
uiContext
.
getRouter
();
router
.
pushNamedRoute
({
name
:
'
myPage
'
,
params
:
{
data1
:
'
message
'
,
data2
:
{
data3
:
[
123
,
456
,
789
]
}
}
},
router
.
RouterMode
.
Standard
)
.
then
(()
=>
{
// success
})
.
catch
(
err
=>
{
console
.
error
(
`pushNamedRoute failed, code is
${
err
.
code
}
, message is
${
err
.
message
}
`
);
})
```
### pushNamedRoute
pushNamedRoute(options: NamedRouterOptions, mode: RouterMode, callback: AsyncCallback
<
void
>
): void
跳转到指定的命名路由页面。
**系统能力:**
SystemCapability.ArkUI.ArkUI.Full
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ------------------------------- | ---- | ---------- |
| options |
[
NamedRouterOptions
](
js-apis-router.md#namedrouteroptions10
)
| 是 | 跳转页面描述信息。 |
| mode |
[
RouterMode
](
js-apis-router.md#routermode9
)
| 是 | 跳转页面使用的模式。 |
| callback | AsyncCallback
<
void
>
| 是 | 异常响应回调。 |
**错误码:**
以下错误码的详细介绍请参见
[
ohos.router(页面路由)
](
../errorcodes/errorcode-router.md
)
错误码。
| 错误码ID | 错误信息 |
| --------- | ------- |
| 100001 | if UI execution context not found. |
| 100003 | if the pages are pushed too much. |
| 100004 | if the named route is not exist. |
**示例:**
```
ts
let
router
=
uiContext
.
getRouter
();
router
.
pushNamedRoute
({
name
:
'
myPage
'
,
params
:
{
data1
:
'
message
'
,
data2
:
{
data3
:
[
123
,
456
,
789
]
}
}
},
router
.
RouterMode
.
Standard
,
(
err
)
=>
{
if
(
err
)
{
console
.
error
(
`pushNamedRoute failed, code is
${
err
.
code
}
, message is
${
err
.
message
}
`
);
return
;
}
console
.
info
(
'
pushNamedRoute success
'
);
})
```
### replaceNamedRoute
replaceNamedRoute(options: NamedRouterOptions): Promise
<
void
>
用指定的命名路由页面替换当前页面,并销毁被替换的页面。
**系统能力:**
SystemCapability.ArkUI.ArkUI.Full
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ------------------------------- | ---- | ------------------ |
| options |
[
NamedRouterOptions
](
js-apis-router.md#namedrouteroptions10
)
| 是 | 替换页面描述信息。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | --------- |
| Promise
<
void
>
| 异常返回结果。 |
**错误码:**
以下错误码的详细介绍请参见
[
ohos.router(页面路由)
](
../errorcodes/errorcode-router.md
)
错误码。
| 错误码ID | 错误信息 |
| --------- | ------- |
| 100001 | if UI execution context not found. |
| 100004 | if the named route is not exist. |
**示例:**
```
ts
let
router
=
uiContext
.
getRouter
();
router
.
replaceNamedRoute
({
name
:
'
myPage
'
,
params
:
{
data1
:
'
message
'
}
})
.
then
(()
=>
{
// success
})
.
catch
(
err
=>
{
console
.
error
(
`replaceNamedRoute failed, code is
${
err
.
code
}
, message is
${
err
.
message
}
`
);
})
```
### replaceNamedRoute
replaceNamedRoute(options: NamedRouterOptions, callback: AsyncCallback
<
void
>
): void
用指定的命名路由页面替换当前页面,并销毁被替换的页面。
**系统能力:**
SystemCapability.ArkUI.ArkUI.Full
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ------------------------------- | ---- | ------------------ |
| options |
[
NamedRouterOptions
](
js-apis-router.md#namedrouteroptions10
)
| 是 | 替换页面描述信息。 |
| callback | AsyncCallback
<
void
>
| 是 | 异常响应回调。 |
**错误码:**
以下错误码的详细介绍请参见
[
ohos.router(页面路由)
](
../errorcodes/errorcode-router.md
)
错误码。
| 错误码ID | 错误信息 |
| --------- | ------- |
| 100001 | if UI execution context not found. |
| 100004 | if the named route is not exist. |
**示例:**
```
ts
let
router
=
uiContext
.
getRouter
();
router
.
replaceNamedRoute
({
name
:
'
myPage
'
,
params
:
{
data1
:
'
message
'
}
},
(
err
)
=>
{
if
(
err
)
{
console
.
error
(
`replaceNamedRoute failed, code is
${
err
.
code
}
, message is
${
err
.
message
}
`
);
return
;
}
console
.
info
(
'
replaceNamedRoute success
'
);
})
```
### replaceNamedRoute
replaceNamedRoute(options: NamedRouterOptions, mode: RouterMode): Promise
<
void
>
用指定的命名路由页面替换当前页面,并销毁被替换的页面。
**系统能力:**
SystemCapability.ArkUI.ArkUI.Full
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ------------------------------- | ---- | ---------- |
| options |
[
NamedRouterOptions
](
js-apis-router.md#namedrouteroptions10
)
| 是 | 替换页面描述信息。 |
| mode |
[
RouterMode
](
js-apis-router.md#routermode9
)
| 是 | 跳转页面使用的模式。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | --------- |
| Promise
<
void
>
| 异常返回结果。 |
**错误码:**
以下错误码的详细介绍请参见
[
ohos.router(页面路由)
](
../errorcodes/errorcode-router.md
)
错误码。
| 错误码ID | 错误信息 |
| --------- | ------- |
| 100001 | if can not get the delegate. |
| 100004 | if the named route is not exist. |
**示例:**
```
ts
let
router
=
uiContext
.
getRouter
();
router
.
replaceNamedRoute
({
name
:
'
myPage
'
,
params
:
{
data1
:
'
message
'
}
},
router
.
RouterMode
.
Standard
)
.
then
(()
=>
{
// success
})
.
catch
(
err
=>
{
console
.
error
(
`replaceNamedRoute failed, code is
${
err
.
code
}
, message is
${
err
.
message
}
`
);
})
```
### replaceNamedRoute
replaceNamedRoute(options: NamedRouterOptions, mode: RouterMode, callback: AsyncCallback
<
void
>
): void
用指定的命名路由页面替换当前页面,并销毁被替换的页面。
**系统能力:**
SystemCapability.ArkUI.ArkUI.Full
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ------------------------------- | ---- | ---------- |
| options |
[
NamedRouterOptions
](
js-apis-router.md#namedrouteroptions10
)
| 是 | 替换页面描述信息。 |
| mode |
[
RouterMode
](
js-apis-router.md#routermode9
)
| 是 | 跳转页面使用的模式。 |
| callback | AsyncCallback
<
void
>
| 是 | 异常响应回调。 |
**错误码:**
以下错误码的详细介绍请参见
[
ohos.router(页面路由)
](
../errorcodes/errorcode-router.md
)
错误码。
| 错误码ID | 错误信息 |
| --------- | ------- |
| 100001 | if UI execution context not found. |
| 100004 | if the named route is not exist. |
**示例:**
```
ts
let
router
=
uiContext
.
getRouter
();
router
.
replaceNamedRoute
({
name
:
'
myPage
'
,
params
:
{
data1
:
'
message
'
}
},
router
.
RouterMode
.
Standard
,
(
err
)
=>
{
if
(
err
)
{
console
.
error
(
`replaceNamedRoute failed, code is
${
err
.
code
}
, message is
${
err
.
message
}
`
);
return
;
}
console
.
info
(
'
replaceNamedRoute success
'
);
});
```
### back
back(options?: RouterOptions ): void
...
...
zh-cn/application-dev/reference/apis/js-apis-cryptoFramework.md
浏览文件 @
37e2d8b7
...
...
@@ -369,10 +369,6 @@ getEncoded(): DataBlob
**错误码:**
> **说明:**
>
> 从API version 10开始,该接口支持抛出错误码。
| 错误码ID | 错误信息 |
| -------- | ---------------------- |
| 801 | this operation is not supported. |
...
...
@@ -794,8 +790,8 @@ createAsyKeyGenerator(algName: string): AsyKeyGenerator
| 错误码ID | 错误信息 |
| -------- | ---------------------- |
| 401 | invalid parameters. |
| 801
<sup>
10+
</sup>
| this operation is not supported. |
| 17620001
<sup>
10+
</sup>
| memory error. |
| 801 | this operation is not supported. |
| 17620001 | memory error. |
**示例:**
...
...
@@ -837,7 +833,7 @@ generateKeyPair(callback: AsyncCallback\<KeyPair>): void
| -------- | ---------------------- |
| 401 | invalid parameters. |
| 17620001 | memory error. |
| 17630001
<sup>
10+
</sup>
| crypto operation error. |
| 17630001 | crypto operation error. |
**示例:**
...
...
@@ -874,7 +870,7 @@ generateKeyPair(): Promise\<KeyPair>
| -------- | ---------------------- |
| 401 | invalid parameters. |
| 17620001 | memory error. |
| 17630001
<sup>
10+
</sup>
| crypto operation error. |
| 17630001 | crypto operation error. |
**示例:**
...
...
@@ -912,7 +908,7 @@ convertKey(pubKey: DataBlob, priKey: DataBlob, callback: AsyncCallback\<KeyPair\
| -------- | ---------------------- |
| 401 | invalid parameters. |
| 17620001 | memory error. |
| 17630001
<sup>
10+
</sup>
| crypto operation error. |
| 17630001 | crypto operation error. |
**示例:**
...
...
@@ -960,7 +956,7 @@ convertKey(pubKey: DataBlob, priKey: DataBlob): Promise\<KeyPair>
| -------- | ---------------------- |
| 401 | invalid parameters. |
| 17620001 | memory error. |
| 17630001
<sup>
10+
</sup>
| crypto operation error. |
| 17630001 | crypto operation error. |
**示例:**
...
...
@@ -1315,7 +1311,7 @@ createCipher(transformation: string): Cipher
| -------- | ---------------------- |
| 401 | invalid parameters. |
| 801 | this operation is not supported. |
| 17620001
<sup>
10+
</sup>
| memory error. |
| 17620001 | memory error. |
**示例:**
...
...
@@ -1837,8 +1833,8 @@ Sign实例生成。<br/>支持的规格详见框架概述“[签名验签规格]
| 错误码ID | 错误信息 |
| -------- | ---------------------- |
| 401 | invalid parameters. |
| 801
<sup>
10+
</sup>
| this operation is not supported. |
| 17620001
<sup>
10+
</sup>
| memory error. |
| 801 | this operation is not supported. |
| 17620001 | memory error. |
**示例:**
...
...
@@ -2224,8 +2220,8 @@ Verify实例生成。<br/>支持的规格详见框架概述“[签名验签规
| 错误码ID | 错误信息 |
| -------- | ---------------------- |
| 401 | invalid parameters. |
| 801
<sup>
10+
</sup>
| this operation is not supported. |
| 17620001
<sup>
10+
</sup>
| memory error. |
| 801 | this operation is not supported. |
| 17620001 | memory error. |
**示例:**
...
...
@@ -2570,8 +2566,8 @@ KeyAgreement实例生成。<br/>支持的规格详见框架概述“[密钥协
| 错误码ID | 错误信息 |
| -------- | ---------------------- |
| 401 | invalid parameters. |
| 801
<sup>
10+
</sup>
| this operation is not supported. |
| 17620001
<sup>
10+
</sup>
| memory error. |
| 801 | this operation is not supported. |
| 17620001 | memory error. |
**示例:**
...
...
zh-cn/application-dev/reference/apis/js-apis-device-info.md
浏览文件 @
37e2d8b7
...
...
@@ -50,7 +50,7 @@ import deviceInfo from '@ohos.deviceInfo'
| buildTime | string | 是 | 否 | 构建时间。 |
| buildRootHash | string | 是 | 否 | 构建版本Hash。 |
| udid
<sup>
7+
</sup>
| string | 是 | 否 | 设备Udid。
<br/>
**需要权限**
:ohos.permission.sec.ACCESS_UDID|
| distributionOSName
<sup>
10+
</sup>
| String | 是 | 否 |
分布式操作
系统名称。 |
| distributionOSVersion
<sup>
10+
</sup>
| String | 是 | 否 |
分布式操作
系统版本号。 |
| distributionOSApiVersion
<sup>
10+
</sup>
| number| 是 | 否 |
分布式操作
系统api版本。 |
| distributionOSName
<sup>
10+
</sup>
| String | 是 | 否 |
发行版
系统名称。 |
| distributionOSVersion
<sup>
10+
</sup>
| String | 是 | 否 |
发行版
系统版本号。 |
| distributionOSApiVersion
<sup>
10+
</sup>
| number| 是 | 否 |
发行版
系统api版本。 |
| distributionOSReleaseType
<sup>
10+
</sup>
| String | 是 | 否 | 发行版系统类型。 |
zh-cn/application-dev/reference/apis/js-apis-inner-application-continueCallback.md
浏览文件 @
37e2d8b7
...
...
@@ -14,11 +14,13 @@ Mission迁移完成后调用,返回迁移结果。
**系统能力**
:SystemCapability.Ability.AbilityRuntime.Mission
**系统API**
:该接口为系统接口,三方应用不支持调用。
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| result | number |
否
| 迁移任务的结果。 |
| result | number |
是
| 迁移任务的结果。 |
**示例:**
...
...
zh-cn/application-dev/reference/apis/js-apis-inner-application-formExtensionContext.md
浏览文件 @
37e2d8b7
...
...
@@ -23,7 +23,7 @@ import common from '@ohos.app.ability.common';
import
FormExtensionAbility
from
'
@ohos.app.form.FormExtensionAbility
'
;
import
formBindingData
from
'
@ohos.app.form.formBindingData
'
;
class
MyFormExtensionAbility
extends
FormExtensionAbility
{
export
default
class
MyFormExtensionAbility
extends
FormExtensionAbility
{
onAddForm
(
want
)
{
let
formContext
=
this
.
context
;
// 获取FormExtensionContext
// ...
...
...
zh-cn/application-dev/reference/apis/js-apis-inner-application-serviceExtensionContext.md
浏览文件 @
37e2d8b7
...
...
@@ -1617,8 +1617,8 @@ startAbilityByCallWithAccount(want: Want, accountId: number): Promise<Caller&
let
want
=
{
bundleName
:
'
com.acts.actscalleeabilityrely
'
,
moduleName
:
'
entry
'
,
abilityName
:
'
EntryAbility
'
deviceId
:
''
abilityName
:
'
EntryAbility
'
,
deviceId
:
''
,
parameters
:
{
// 'ohos.aafwk.param.callAbilityToForeground' 值设置为true时为前台启动, 设置false或不设置为后台启动
'
ohos.aafwk.param.callAbilityToForeground
'
:
true
...
...
zh-cn/application-dev/reference/apis/js-apis-inner-application-uiAbilityContext.md
浏览文件 @
37e2d8b7
...
...
@@ -1228,7 +1228,7 @@ terminateSelf(): Promise<void>;
// 处理业务逻辑错误
console
.
error
(
`terminateSelf failed, code is
${
err
.
code
}
, message is
${
err
.
message
}
`
);
});
}
catch
(
err
or
)
{
}
catch
(
err
)
{
// 捕获同步的参数错误
console
.
error
(
`terminateSelf failed, code is
${
err
.
code
}
, message is
${
err
.
message
}
`
);
}
...
...
@@ -2577,8 +2577,8 @@ startAbilityByCallWithAccount(want: Want, accountId: number): Promise<Caller&
let
want
=
{
bundleName
:
'
com.acts.actscalleeabilityrely
'
,
moduleName
:
'
entry
'
,
abilityName
:
'
EntryAbility
'
deviceId
:
''
abilityName
:
'
EntryAbility
'
,
deviceId
:
''
,
parameters
:
{
// 'ohos.aafwk.param.callAbilityToForeground' 值设置为true时为前台启动, 设置false或不设置为后台启动
'
ohos.aafwk.param.callAbilityToForeground
'
:
true
...
...
zh-cn/application-dev/reference/apis/js-apis-promptAction.md
浏览文件 @
37e2d8b7
...
...
@@ -319,7 +319,7 @@ try {
| 名称 | 类型 | 必填 | 说明 |
| ------- | ------------------------------------------------------------ | ---- | ------------------------------------------------------------ |
| title | string
\|
[
Resource
](
../arkui-ts/ts-types.md#resource类型
)
<sup>
9+
</sup>
| 否 | 标题文本。 |
| buttons |
[
[Button
](
#button
)
,
[
Button
](
#button
)
?,
[
Button
](
#button
)
?,
[
Button
](
#button
)
?,
[
Button
](
#button
)
?,
[
Button
](
#button
)
?] | 是 | 菜单中菜单项按钮的数组,结构为:{text:'button',
color:
'
\#
666666'},支持1-6个按钮。
大于6个按钮时弹窗
不显示。 |
| buttons |
[
[Button
](
#button
)
,
[
Button
](
#button
)
?,
[
Button
](
#button
)
?,
[
Button
](
#button
)
?,
[
Button
](
#button
)
?,
[
Button
](
#button
)
?] | 是 | 菜单中菜单项按钮的数组,结构为:{text:'button',
color:
'
\#
666666'},支持1-6个按钮。
按钮数量大于6个时,仅显示前6个按钮,之后的按钮
不显示。 |
## ActionMenuSuccessResponse
...
...
zh-cn/application-dev/reference/apis/js-apis-uripermissionmanager.md
浏览文件 @
37e2d8b7
...
...
@@ -17,12 +17,16 @@ import uriPermissionManager from '@ohos.application.uriPermissionManager';
## uriPermissionManager.grantUriPermission
grantUriPermission(uri: string, flag: wantConstant.Flags,
accessTokenId: number, callback: AsyncCallback
<
number
>
): void
grantUriPermission(uri: string, flag: wantConstant.Flags,
targetBundleName: string, callback: AsyncCallback
<
number
>
): void;
授权URI给指定应用,通过callback返回结果。
**系统API**
:该接口为系统接口,三方应用不支持调用。
**系统能力**
:SystemCapability.Ability.AbilityRuntime.Core
**需要权限:**
ohos.permission.PROXY_AUTHORIZATION_URI
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
...
...
@@ -32,6 +36,18 @@ grantUriPermission(uri: string, flag: wantConstant.Flags, accessTokenId: number,
| targetBundleName | string | 是 | 被授权URI的应用包名 |
| callback | AsyncCallback
<
number
>
| 是 | callback形式返回检验结果,返回0表示有权限,返回-1表示无权限。 |
**错误码:**
| 错误码ID | 错误信息 |
| -------- | -------- |
| 201 | Permissions denied. |
| 202 | Not System App. Interface caller is not a system app. |
| 401 | The parameter check failed. |
| 16500050 | Internal error. |
| 16500058 | Invalid URI flag. |
| 16500059 | Invalid URI type. |
| 16500060 | Sandbox application can not grant URI permission. |
**示例:**
```
js
...
...
@@ -46,12 +62,16 @@ grantUriPermission(uri: string, flag: wantConstant.Flags, accessTokenId: number,
## uriPermissionManager.grantUriPermission
grantUriPermission(uri: string, flag: wantConstant.Flags,
accessTokenId: number
): Promise
<
number
>
grantUriPermission(uri: string, flag: wantConstant.Flags,
targetBundleName: string
): Promise
<
number
>
授权URI给指定应用,通过返回值返回结果。
**系统API**
:该接口为系统接口,三方应用不支持调用。
**系统能力**
:SystemCapability.Ability.AbilityRuntime.Core
**需要权限:**
ohos.permission.PROXY_AUTHORIZATION_URI
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
...
...
@@ -66,13 +86,25 @@ grantUriPermission(uri: string, flag: wantConstant.Flags, accessTokenId: number)
| -------- | -------- |
| Promise
<
number
>
| 返回0表示有权限,返回-1表示无权限。 |
**错误码:**
| 错误码ID | 错误信息 |
| -------- | -------- |
| 201 | Permissions denied. |
| 202 | Not System App. Interface caller is not a system app. |
| 401 | The parameter check failed. |
| 16500050 | Internal error. |
| 16500058 | Invalid URI flag. |
| 16500059 | Invalid URI type. |
| 16500060 | Sandbox application can not grant URI permission. |
**示例:**
```
js
import
WantConstant
from
'
@ohos.ability.wantConstant
'
;
let
targetBundleName
=
'
com.example.test_case1
'
let
uri
=
"
fileshare:///com.samples.filesharetest.FileShare/person/10
"
uriPermissionManager
.
grantUriPermission
(
uri
,
w
antConstant
.
Flags
.
FLAG_AUTH_READ_URI_PERMISSION
,
targetBundleName
)
uriPermissionManager
.
grantUriPermission
(
uri
,
W
antConstant
.
Flags
.
FLAG_AUTH_READ_URI_PERMISSION
,
targetBundleName
)
.
then
((
data
)
=>
{
console
.
log
(
'
Verification succeeded.
'
+
data
)
}).
catch
((
error
)
=>
{
...
...
@@ -81,12 +113,16 @@ grantUriPermission(uri: string, flag: wantConstant.Flags, accessTokenId: number)
```
## uriPermissionManager.revokeUriPermission
revokeUriPermission(uri: string,
accessTokenId: number, callback: AsyncCallback
<
number
>
): void
revokeUriPermission(uri: string,
targetBundleName: string, callback: AsyncCallback
<
number
>
): void;
撤销授权指定应用的URI,通过callback返回结果。
**系统API**
:该接口为系统接口,三方应用不支持调用。
**系统能力**
:SystemCapability.Ability.AbilityRuntime.Core
**需要权限:**
ohos.permission.PROXY_AUTHORIZATION_URI
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
...
...
@@ -95,13 +131,22 @@ revokeUriPermission(uri: string, accessTokenId: number, callback: AsyncCallback&
| targetBundleName | string | 是 | 被撤销授权uri的应用包名 |
| callback | AsyncCallback
<
number
>
| 是 | callback形式返回检验结果,返回0表示有权限,返回-1表示无权限。 |
**错误码:**
| 错误码ID | 错误信息 |
| -------- | -------- |
| 201 | Permissions denied. |
| 202 | Not System App. Interface caller is not a system app. |
| 401 | The parameter check failed. |
| 16500059 | Invalid URI type. |
**示例:**
```
js
import
WantConstant
from
'
@ohos.ability.wantConstant
'
;
let
targetBundleName
=
'
com.example.test_case1
'
let
URI
=
"
fileshare:///com.samples.filesharetest.FileShare/person/10
"
uriPermissionManager
.
revokeUriPermission
(
uri
,
targetBundleName
,
(
result
)
=>
{
uriPermissionManager
.
revokeUriPermission
(
URI
,
targetBundleName
,
(
result
)
=>
{
console
.
log
(
"
result.code =
"
+
result
.
code
)
})
```
...
...
@@ -109,12 +154,17 @@ revokeUriPermission(uri: string, accessTokenId: number, callback: AsyncCallback&
## uriPermissionManager.revokeUriPermission
revokeUriPermission(uri: string,
flag: wantConstant.Flags, accessTokenId: number
): Promise
<
number
>
revokeUriPermission(uri: string,
targetBundleName: string
): Promise
<
number
>
撤销授权指定应用的URI,通过返回值返回结果。
**系统API**
:该接口为系统接口,三方应用不支持调用。
**系统能力**
:SystemCapability.Ability.AbilityRuntime.Core
**需要权限:**
ohos.permission.PROXY_AUTHORIZATION_URI
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
...
...
@@ -128,6 +178,15 @@ revokeUriPermission(uri: string, flag: wantConstant.Flags, accessTokenId: number
| -------- | -------- |
| Promise
<
number
>
| 返回0表示有权限,返回-1表示无权限。 |
**错误码:**
| 错误码ID | 错误信息 |
| -------- | -------- |
| 201 | Permissions denied. |
| 202 | Not System App. Interface caller is not a system app. |
| 401 | The parameter check failed. |
| 16500059 | Invalid URI type. |
**示例:**
```
js
...
...
zh-cn/application-dev/reference/arkui-ts/figures/zh-cn_image_1501929990650.jpg
已删除
100644 → 0
浏览文件 @
246f7660
22.4 KB
zh-cn/application-dev/reference/arkui-ts/ts-container-grid.md
浏览文件 @
37e2d8b7
...
...
@@ -200,6 +200,7 @@ struct GridExample {
.
width
(
'
90%
'
)
.
backgroundColor
(
0xFAEEE0
)
.
height
(
300
)
.
scrollBar
(
BarState
.
Off
)
Button
(
'
next page
'
)
.
onClick
(()
=>
{
// 点击后滑到下一页
this
.
scroller
.
scrollPage
({
next
:
true
})
...
...
zh-cn/application-dev/reference/arkui-ts/ts-container-list.md
浏览文件 @
37e2d8b7
...
...
@@ -41,8 +41,8 @@ List(value?:{space?: number | string, initialIndex?: number, scroller?
| 参数名 | 参数类型 | 必填 | 参数描述 |
| ------------ | ---------------------------------------- | ---- | ---------------------------------------- |
| space | number
\|
string | 否 | 子组件主轴方向的间隔。
<br/>
默认值:0
<br/>
**说明:**
<br/>
设置为
除-1外其他负数或百分比
时,按默认值显示。
<br/>
space参数值小于List分割线宽度时,子组件主轴方向的间隔取分割线宽度。 |
| initialIndex | number | 否 | 设置当前List初次加载时视口起始位置显示的item的索引值。
<br/>
默认值:0
<br/>
**说明:**
<br/>
设置为
除-1外其他
负数或超过了当前List最后一个item的索引值时视为无效取值,无效取值按默认值显示。 |
| space | number
\|
string | 否 | 子组件主轴方向的间隔。
<br/>
默认值:0
<br/>
**说明:**
<br/>
设置为
负数
时,按默认值显示。
<br/>
space参数值小于List分割线宽度时,子组件主轴方向的间隔取分割线宽度。 |
| initialIndex | number | 否 | 设置当前List初次加载时视口起始位置显示的item的索引值。
<br/>
默认值:0
<br/>
**说明:**
<br/>
设置为负数或超过了当前List最后一个item的索引值时视为无效取值,无效取值按默认值显示。 |
| scroller |
[
Scroller
](
ts-container-scroll.md#scroller
)
| 否 | 可滚动组件的控制器。用于与可滚动组件进行绑定。
<br/>
**说明:**
<br/>
不允许和其他滚动类组件绑定同一个滚动控制对象。 |
## 属性
...
...
@@ -181,6 +181,7 @@ struct ListExample {
},
item
=>
item
)
}
.
listDirection
(
Axis
.
Vertical
)
// 排列方向
.
scrollBar
(
BarState
.
Off
)
.
divider
({
strokeWidth
:
2
,
color
:
0xFFFFFF
,
startMargin
:
20
,
endMargin
:
20
})
// 每行之间的分界线
.
edgeEffect
(
EdgeEffect
.
Spring
)
// 滑动到边缘无效果
.
onScrollIndex
((
firstIndex
:
number
,
lastIndex
:
number
)
=>
{
...
...
@@ -231,6 +232,7 @@ struct ListLanesExample {
.
border
({
width
:
3
,
color
:
Color
.
Red
})
.
lanes
({
minLength
:
40
,
maxLength
:
40
})
.
alignListItem
(
this
.
alignListItem
)
.
scrollBar
(
BarState
.
Off
)
Button
(
"
点击更改alignListItem:
"
+
this
.
alignListItem
).
onClick
(()
=>
{
if
(
this
.
alignListItem
==
ListItemAlign
.
Start
)
{
...
...
@@ -289,6 +291,7 @@ struct ListExample{
}
},
item
=>
item
)
}.
width
(
'
90%
'
)
.
scrollBar
(
BarState
.
Off
)
}.
width
(
'
100%
'
)
Button
(
'
edit list
'
)
...
...
zh-cn/application-dev/reference/arkui-ts/ts-container-listitem.md
浏览文件 @
37e2d8b7
...
...
@@ -118,6 +118,7 @@ struct ListItemExample {
}
},
item
=>
item
)
}.
width
(
'
90%
'
)
.
scrollBar
(
BarState
.
Off
)
}.
width
(
'
100%
'
).
height
(
'
100%
'
).
backgroundColor
(
0xDCDCDC
).
padding
({
top
:
5
})
}
}
...
...
@@ -125,54 +126,6 @@ struct ListItemExample {
![
zh-cn_image_0000001219864159
](
figures/zh-cn_image_0000001219864159.gif
)
```
ts
// xxx.ets
@
Entry
@
Component
struct
ListItemExample2
{
@
State
message
:
string
=
'
Hello World
'
@
Builder
itemEnd
()
{
Row
()
{
Button
(
"
Del
"
).
margin
(
"
4vp
"
)
Button
(
"
Set
"
).
margin
(
"
4vp
"
)
}.
padding
(
"
4vp
"
).
justifyContent
(
FlexAlign
.
SpaceEvenly
)
}
build
()
{
Column
()
{
List
({
space
:
10
})
{
ListItem
()
{
Text
(
this
.
message
)
.
width
(
'
100%
'
)
.
height
(
100
)
.
fontSize
(
16
)
.
textAlign
(
TextAlign
.
Center
)
.
borderRadius
(
10
)
.
backgroundColor
(
0xFFFFFF
)
}
.
swipeAction
({
end
:
this
.
itemEnd
})
ListItem
()
{
Text
(
this
.
message
)
.
width
(
'
100%
'
)
.
height
(
100
)
.
fontSize
(
16
)
.
textAlign
(
TextAlign
.
Center
)
.
borderRadius
(
10
)
.
backgroundColor
(
0xFFFFFF
)
}
.
swipeAction
({
start
:
this
.
itemEnd
})
}
}
.
padding
(
10
)
.
backgroundColor
(
0xDCDCDC
)
.
width
(
'
100%
'
)
.
height
(
'
100%
'
)
}
}
```
![
zh-cn_image_1501929990650
](
figures/zh-cn_image_1501929990650.jpg
)
```
ts
// xxx.ets
...
...
zh-cn/application-dev/reference/arkui-ts/ts-container-listitemgroup.md
浏览文件 @
37e2d8b7
...
...
@@ -107,12 +107,12 @@ struct ListItemGroupExample {
}
},
item
=>
item
)
}
.
borderRadius
(
20
)
.
divider
({
strokeWidth
:
1
,
color
:
Color
.
Blue
})
// 每行之间的分界线
})
}
.
width
(
'
90%
'
)
.
sticky
(
StickyStyle
.
Header
|
StickyStyle
.
Footer
)
.
scrollBar
(
BarState
.
Off
)
}.
width
(
'
100%
'
).
height
(
'
100%
'
).
backgroundColor
(
0xDCDCDC
).
padding
({
top
:
5
})
}
}
...
...
zh-cn/application-dev/reference/arkui-ts/ts-container-swiper.md
浏览文件 @
37e2d8b7
...
...
@@ -48,7 +48,7 @@ Swiper(controller?: SwiperController)
| indicatorStyle
<sup>
(deprecated)
</sup>
| {
<br/>
left?:
[Length](ts-types.md#length),
<br/>
top?:
[Length](ts-types.md#length),
<br/>
right?:
[Length](ts-types.md#length),
<br/>
bottom?:
[Length](ts-types.md#length),
<br/>
size?:
[Length](ts-types.md#length),
<br/>
mask?:
boolean,
<br/>
color?:
[ResourceColor](ts-types.md),
<br/>
selectedColor?:
[
ResourceColor
](
ts-types.md
)
<br/>
} | 设置导航点样式:
<br/>
\-
left: 设置导航点距离Swiper组件左边的距离。
<br/>
\-
top: 设置导航点距离Swiper组件顶部的距离。
<br/>
\-
right: 设置导航点距离Swiper组件右边的距离。
<br/>
\-
bottom: 设置导航点距离Swiper组件底部的距离。
<br/>
\-
size: 设置导航点的直径,不支持设置百分比。默认值:6vp。
<br/>
\-
mask: 设置是否显示导航点蒙层样式。
<br/>
\-
color: 设置导航点的颜色。
<br/>
\-
selectedColor: 设置选中的导航点的颜色。
<br/>
从API version 8开始支持,从API version 10开始不再维护,建议使用
[
indicator
](
#indicator10对象说明
)
代替。|
| displayCount
<sup>
8+
</sup>
| number
\|
string | 设置一页内元素显示个数。
<br/>
默认值:1
<br/>
**说明:**
<br/>
字符串类型仅支持设置为'auto',显示效果同SwiperDisplayMode.AutoLinear。
<br/>
使用number类型时,子组件按照主轴均分Swiper宽度(减去displayCount-1的itemSpace)的方式进行主轴拉伸(收缩)布局。 |
| effectMode
<sup>
8+
</sup>
|
[
EdgeEffect
](
ts-appendix-enums.md#edgeeffect
)
| 滑动效果,目前支持的滑动效果参见EdgeEffect的枚举说明。
<br/>
默认值:EdgeEffect.Spring
<br/>
**说明:**
<br/>
控制器接口调用时不生效回弹。 |
| displayArrow
<sup>
10+
</sup>
| value:
[
ArrowStyle
](
#arrowstyle10对象说明
)
\|
boolean,
<br/>
isHoverShow?: boolean | 设置导航点箭头样式。
<br/>
默认值:false
<br/>
isHoverShow:鼠标悬停时显示箭头。
<br/>
默认值:false
|
| displayArrow
<sup>
10+
</sup>
| value:
[
ArrowStyle
](
#arrowstyle10对象说明
)
\|
boolean,
<br/>
isHoverShow?: boolean | 设置导航点箭头样式。
<br/>
-value: 支持设置箭头和底板样式,异常场景使用ArrowStyle对象中的默认值。
<br/>
\-
isHoverShow:设置鼠标悬停时是否显示箭头。
<br/>
默认值:false
<br/>
**说明:**
<br/>
isHoverShow为false时,常驻显示箭头,支持点击翻页。
<br/>
isHoverShow为true时,只有在鼠标悬停时才会显示箭头,并支持点击翻页。
|
## SwiperDisplayMode枚举说明
...
...
@@ -129,10 +129,10 @@ finishAnimation(callback?: () => void): void
| 参数名 | 参数类型 | 必填项 | 参数描述 |
| ------------- | -------- | ------ | -------- |
| isShowBackground | boolean | 否 | 设置箭头底板是否显示。
<br/>
默认值:false |
| isSidebarMiddle | boolean | 否 | 设置箭头
是否在内容区两侧居中显示。
<br/>
默认值:false,
默认显示在导航点指示器两侧。|
| backgroundSize |
[
Length
](
ts-types.md#length
)
| 否 | 设置底板大小。
<br/>
默认值:24vp
|
| backgroundColor |
[
ResourceColor
](
ts-types.md#resourcecolor
)
| 否 | 设置底板颜色。
<br/>
默认值:
\#
19182431
|
| arrowSize |
[
Length
](
ts-types.md#length
)
| 否 | 设置箭头大小。
<br/>
默认值:18vp
|
| isSidebarMiddle | boolean | 否 | 设置箭头
显示位置。
<br/>
默认值:false
<br/>
默认显示在导航点指示器两侧。|
| backgroundSize |
[
Length
](
ts-types.md#length
)
| 否 | 设置底板大小。
<br/>
在导航点两侧显示:
<br/>
默认值:24vp
<br/>
在组件两侧显示:
<br/>
默认值:32vp
<br/>
不支持设置百分比。
|
| backgroundColor |
[
ResourceColor
](
ts-types.md#resourcecolor
)
| 否 | 设置底板颜色。
<br/>
在导航点两侧显示:
<br/>
默认值:
\#
19182431
<br/>
在组件两侧显示:
<br/>
默认值:
\#
00000000
|
| arrowSize |
[
Length
](
ts-types.md#length
)
| 否 | 设置箭头大小。
<br/>
在导航点两侧显示时:
<br/>
默认值:18vp
<br/>
在组件两侧显示时:
<br/>
默认值:24vp
<br/>
**说明:**
<br/>
isShowBackground为true时,arrowSize为backgroundSize的3/4。
<br/>
不支持设置百分比。
|
| arrowColor |
[
ResourceColor
](
ts-types.md#resourcecolor
)
| 否 | 设置箭头颜色。
<br/>
默认值:
\#
182431 |
...
...
zh-cn/application-dev/reference/native-apis/_hi_log.md
浏览文件 @
37e2d8b7
...
...
@@ -23,7 +23,7 @@ HiLog模块实现日志打印功能。
| 文件名称 | 描述 |
| -------- | -------- |
|
[
log.h
](
log_8h.md
)
| HiLog模块日志接口定义,通过这些接口实现日志打印相关功能。
<br>
引用文件:
<hilog
/
log.h
>
|
|
[
log.h
](
log_8h.md
)
| HiLog模块日志接口定义,通过这些接口实现日志打印相关功能。
<br>
**引用文件**
:
<hilog
/
log.h
>
<br>
**库**
:libhitrace_ndk.z.so
|
### 宏定义
...
...
zh-cn/application-dev/ui/arkts-drawing-customization-on-canvas.md
浏览文件 @
37e2d8b7
...
...
@@ -340,8 +340,8 @@ OffscreenCanvasRenderingContext2D对象和CanvasRenderingContext2D对象提供
!
[
2023032422159
](
figures/2023032422159.jpg
)
## 相关实例
## 相关实例
使用画布绘制自定义图形,有以下相关实例可供参考:
使用画布绘制自定义图形,有以下相关实例可供参考:
-
[
Lottie动画
](
https://gitee.com/openharmony/applications_app_samples/tree/master/code/Solutions/Game/Lottie
)
\ No newline at end of file
-
[
Lottie动画
](
https://gitee.com/openharmony/applications_app_samples/tree/master/code/Solutions/Game/Lottie
)
\ No newline at end of file
zh-cn/application-dev/ui/figures/切换指定页签.gif
查看替换文件 @
246f7660
浏览文件 @
37e2d8b7
107.8 KB
|
W:
|
H:
82.4 KB
|
W:
|
H:
2-up
Swipe
Onion skin
zh-cn/release-notes/OpenHarmony-v3.2.2-release.md
0 → 100644
浏览文件 @
37e2d8b7
# OpenHarmony 3.2.2 Release
## 版本概述
当前版本在OpenHarmony 3.2.1 Release的基础上,修复了内存泄漏及linux kernel等开源组件的安全漏洞,增强了系统安全性。修复了部分系统稳定性的issue,增强了系统稳定性。更新配套的SDK版本。
## 配套关系
**表1**
版本软件和工具配套关系
| 软件 | 版本 | 备注 |
| --------------------------------- | ------------------------------------------------ | ------------------------------------------------------------ |
| OpenHarmony | 3.2.2 Release | NA |
| Public SDK | Ohos_sdk_public 3.2.13.5 (API Version 9 Release) | 面向应用开发者提供,不包含需要使用系统权限的系统接口。通过DevEco Studio默认获取的SDK为Public SDK。 |
| HUAWEI DevEco Studio(可选) | 3.1 Release | OpenHarmony应用开发推荐使用。
<br
/>
[
点击此处获取
](
https://developer.harmonyos.com/cn/develop/deveco-studio#download
)
|
| HUAWEI DevEco Device Tool(可选) | 3.1 Release | OpenHarmony智能设备集成开发环境推荐使用。
<br
/>
[
点击此处获取
](
https://device.harmonyos.com/cn/develop/ide/
)
|
## 源码获取
### 前提条件
1.
注册码云gitee帐号。
2.
注册码云SSH公钥,请参考
[
码云帮助中心
](
https://gitee.com/help/articles/4191
)
。
3.
安装
[
git客户端
](
https://gitee.com/link?target=https%3A%2F%2Fgit-scm.com%2Fbook%2Fzh%2Fv2%2F%25E8%25B5%25B7%25E6%25AD%25A5-%25E5%25AE%2589%25E8%25A3%2585-Git
)
和
[
git-lfs
](
https://gitee.com/vcs-all-in-one/git-lfs?_from=gitee_search#downloading
)
并配置用户信息。
```
git config --global user.name "yourname"
git config --global user.email "your-email-address"
git config --global credential.helper store
```
4.
安装码云repo工具,可以执行如下命令。
```
curl -s https://gitee.com/oschina/repo/raw/fork_flow/repo-py3 > /usr/local/bin/repo #如果没有权限,可下载至其他目录,并将其配置到环境变量中chmod a+x /usr/local/bin/repo
pip3 install -i https://repo.huaweicloud.com/repository/pypi/simple requests
```
### 通过repo获取
**方式一(推荐)**
通过repo + ssh 下载(需注册公钥,请参考
[
码云帮助中心
](
https://gitee.com/help/articles/4191
)
)。
```
repo init -u git@gitee.com:openharmony/manifest.git -b refs/tags/OpenHarmony-v3.2.2-Release --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
```
**方式二**
通过repo + https 下载。
从版本发布Tag节点获取源码。可获取与版本发布时完全一致的源码。
```
repo init -u https://gitee.com/openharmony/manifest -b refs/tags/OpenHarmony-v3.2.2-Release --no-repo-verify
repo sync -c
repo forall -c 'git lfs pull'
```
### 从镜像站点获取
**表2**
获取源码路径
| 版本源码 |
**版本信息**
|
**下载站点**
|
**SHA256校验码**
|
| ------------------------------------- | ------------- | ------------------------------------------------------------ | ------------------------------------------------------------ |
| 全量代码(标准、轻量和小型系统) | 3.2.2 Release |
[
站点
](
https://mirrors.huaweicloud.com/openharmony/os/3.2.2/code-v3.2.2-Release.tar.gz
)
|
[
SHA256校验码
](
https://mirrors.huaweicloud.com/openharmony/os/3.2.2/code-v3.2.2-Release.tar.gz.sha256
)
|
| Hi3861解决方案(二进制) | 3.2.2 Release |
[
站点
](
https://mirrors.huaweicloud.com/openharmony/os/3.2.2/hispark_pegasus.tar.gz
)
|
[
SHA256校验码
](
https://mirrors.huaweicloud.com/openharmony/os/3.2.2/hispark_pegasus.tar.gz.sha256
)
|
| Hi3516解决方案-LiteOS(二进制) | 3.2.2 Release |
[
站点
](
https://mirrors.huaweicloud.com/openharmony/os/3.2.2/hispark_taurus_LiteOS.tar.gz
)
|
[
SHA256校验码
](
https://mirrors.huaweicloud.com/openharmony/os/3.2.2/hispark_taurus_LiteOS.tar.gz.sha256
)
|
| Hi3516解决方案-Linux(二进制) | 3.2.2 Release |
[
站点
](
https://mirrors.huaweicloud.com/openharmony/os/3.2.2/hispark_taurus_Linux.tar.gz
)
|
[
SHA256校验码
](
https://mirrors.huaweicloud.com/openharmony/os/3.2.2/hispark_taurus_Linux.tar.gz.sha256
)
|
| RK3568标准系统解决方案(二进制) | 3.2.2 Release |
[
站点
](
https://mirrors.huaweicloud.com/openharmony/os/3.2.2/dayu200_standard_arm32.tar.gz
)
|
[
SHA256校验码
](
https://mirrors.huaweicloud.com/openharmony/os/3.2.2/dayu200_standard_arm32.tar.gz.sha256
)
|
| 标准系统Public SDK包(Mac) | 3.2.13.5 |
[
站点
](
https://mirrors.huaweicloud.com/openharmony/os/3.2.2/ohos-sdk-mac-public.tar.gz
)
|
[
SHA256校验码
](
https://mirrors.huaweicloud.com/openharmony/os/3.2.2/ohos-sdk-mac-public.tar.gz.sha256
)
|
| 标准系统Public SDK包(Mac-M1) | 3.2.13.5 |
[
站点
](
https://mirrors.huaweicloud.com/openharmony/os/3.2.2/L2-SDK-MAC-M1-PUBLIC.tar.gz
)
|
[
SHA256校验码
](
https://mirrors.huaweicloud.com/openharmony/os/3.2.2/L2-SDK-MAC-M1-PUBLIC.tar.gz.sha256
)
|
| 标准系统Public SDK包(Windows/Linux) | 3.2.13.5 |
[
站点
](
https://mirrors.huaweicloud.com/openharmony/os/3.2.2/ohos-sdk-windows_linux-public.tar.gz
)
|
[
SHA256校验码
](
https://mirrors.huaweicloud.com/openharmony/os/3.2.2/ohos-sdk-windows_linux-public.tar.gz.sha256
)
|
## 更新说明
### API
3.
2.2 Release对比3.2.1 Release API接口无变更。
### 芯片及开发板适配
芯片及开发板适配状态请参考
[
SIG-Devboard
](
https://gitee.com/openharmony/community/blob/master/sig/sig_devboard/sig_devboard_cn.md
)
信息。
## 修复缺陷issue列表
**表3**
修复缺陷issue列表
| ISSUE | 问题描述 |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
|
[
I70T6E
](
https://gitee.com/openharmony/web_webview/issues/I70T6E
)
| 【OpenHarmony 3.2.12.2】【RK3568】【压力测试】【ToC】【低概率1/10】【wukong】出现1次 由进程com.ohos.note下的Chrome_IOThread线程导致libweb_engine.so出现cppcrash |
|
[
I76JRL
](
https://gitee.com/openharmony/drivers_peripheral/issues/I76JRL
)
| 【OpenHarmony 3.2.11.9】【RK3568】【压力测试】【ToC】【低概率1/10】【wukong】出现1次,camera_host进程下offlinepipeline发生cppcrash,信息为libcamera_pipeline_core.z.so。 |
|
[
I7C0LX
](
https://gitee.com/openharmony/developtools_profiler/issues/I7C0LX
)
| 【OpenHarmony 3.2.13.1】【RK3568】【压力测试】【ToC】【高概率6/10】【wukong】出现650次,com.ohos.smartperf应用出现jscrash,内容信息为initDb。 |
|
[
I7C0SA
](
https://gitee.com/openharmony/vendor_hihope/issues/I7C0SA
)
| 【OpenHarmony 3.2.13.1】【RK3568】【压力测试】【ToC】【高概率】【wukong】出现27次 由进程com.ohos.systemui下的RSRenderThread线程导致libmali-bifrost-g52-g2p0-ohos.so出现cppcrash |
|
[
I7C10M
](
https://gitee.com/openharmony/security_privacy_center/issues/I7C10M
)
| 【OpenHarmony 3.2.13.1】【RK3568】【压力测试】【ToC】【高概率6/10】【wukong】出现39次,com.ohos.certmanager出现jscrash,内容信息为saveAllMaps。 |
|
[
I7CA2W
](
https://gitee.com/openharmony/multimedia_medialibrary_standard/issues/I7CA2W
)
| 【OpenHarmony 3.2.13.1】【RK3568】【压力测试】【ToC】【高概率】【wukong】出现358次, 由进程com.ohos.medialibrary.medialibrarydata下com.ohos.medial线程出现cppcrash,崩溃栈显示为libmedialibrary_data_extension.z.so |
|
[
I7CA7A
](
https://gitee.com/openharmony/distributeddatamgr_relational_store/issues/I7CA7A
)
| 【OpenHarmony 3.2.13.1】【RK3568】【压力测试】【ToC】【高概率 8/10】【wukong】出现1131次,由进程com.ohos.contactsdataability下的IPC_2_4692线程导致librdb_data_share_adapter.z.so出现cppcrash |
|
[
I7CBLV
](
https://gitee.com/openharmony/bundlemanager_bundle_framework/issues/I7CBLV
)
| 【OpenHarmony 3.2.13.1】【RK3568】【压力测试】【ToC】【高概率】【wukong】出现1249次,com.ohos.note下出现jscrash问题,栈名:getFolderText与createRdbStore |
|
[
I7CBWQ
](
https://gitee.com/openharmony/applications_mms/issues/I7CBWQ
)
| 【OpenHarmony 3.2.13.1】【RK3568】【压力测试】【ToC】【低概率】【wukong】出现6次关键应用: com.ohos.mms由于STRINGID:APPLICATION_BLOCK_INPUT卡在libeventhandler.z.so |
|
[
I7CWA0
](
https://gitee.com/openharmony/communication_ipc/issues/I7CWA0
)
| 【OpenHarmony 3.2.13.1】【RK3568】【压力测试】【ToC】【低概率】【wukong】出现1次 由关键进程com.ohos.contacts下的IPC_3_17363线程导致libipc_core.z.so出现cppcrash |
|
[
I7CYM3
](
https://gitee.com/openharmony/applications_camera/issues/I7CYM3
)
| 【OpenHarmony 3.2.13.1】【RK3568】【压力测试】【ToC】【高概率8/10】【wukong】出现1800次,com.ohos.camer出现jscrash问题,栈名:getInstance |
## 修复安全issue列表
**表4**
修复安全issue列表
| ISSUE | 问题描述 |
| ------------------------------------------------------------ | --------------------------------------------------- |
| I6QYVO | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2021-3923 |
| I6QYVZ | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-28772 |
| I6QYWE | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-1281 |
| I6RAW6 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-0590 |
| I6UW4T | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-29156 |
| I6UW51 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-2978 |
| I6UW52 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-3176 |
| I6UW55 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-45934 |
| I6UW56 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-47521 |
| I6VUAY | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2004 |
| I6XC4Y | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2162 |
| I6ZM02 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-0179 |
| I70CNH | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2459 |
| I70SLA | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-1078 |
| I722JK | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-0326 |
| I722JP | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-0240 |
| I722K2 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-42915 |
| I722K4 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-42916 |
| I722K6 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-32207 |
| I722K8 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-32221 |
| I722UD | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-32206 |
| I722UL | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-25313 |
| I722UN | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-25314 |
| I722UP | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-25315 |
| I722UV | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-25235 |
| I722V1 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-25236 |
| I722V6 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-23990 |
| I722VB | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-23852 |
| I722VJ | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2021-45960 |
| I722VL | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2021-46143 |
| I722VN | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-22822 |
| I722VP | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-22824 |
| I722VR | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-22823 |
| I722VU | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-22827 |
| I722WC | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-22825 |
| I722WM | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-22826 |
| I722WV | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2021-39275 |
| I722X0 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2021-36160 |
| I722X4 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2021-33193 |
| I722XQ | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-21538 |
| I72RUE | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-47518 |
| I72SDD | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-3545 |
| I72SDF | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-4696 |
| I72SKQ | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-47519 |
| I73C2J | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2513 |
| I73C2O | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-28893 |
| I73MW6 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-23222 |
| I73MWI | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-32250 |
| I73MWQ | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-34918 |
| I73MX2 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-36946 |
| I73PF6 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2726 |
| I749IX | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2721 |
| I74HC1 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-28320 |
| I74HCG | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-28322 |
| I74HD3 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-28321 |
| I76NLQ | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2724 |
| I76NLT | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2722 |
| I77U26 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2021-43389 |
| I77XID | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-25375 |
| I78I9U | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-2588 |
| I78R59 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-3635 |
| I78R5B | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2022-3649 |
| I79CK8 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2021-3600 |
| I79LH8 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2650 |
| I79NDI | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2936 |
| I79NEF | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2937 |
| I7A1M8 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-3006 |
| I7AJ6J | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2935 |
| I7AJ6M | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2933 |
| I7AJ6P | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2931 |
| I7AJ6S | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2932 |
| I7AJ6W | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2929 |
| I7AJHL | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2940 |
| I7AJHO | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2941 |
| I7AJHR | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2938 |
| I7AJHU | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2939 |
| I7AJHX | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2930 |
| I7AJI0 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-2934 |
| I7B049 | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-32643 |
| I7B04Z | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-32636 |
| I7B05A | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-32611 |
| I7B05I | 【漏洞】 【OpenHarmony-3.2-Release】 CVE-2023-32665 |
## 遗留缺陷列表
**表5**
遗留缺陷列表
| ISSUE | 问题描述 | 影响 | 计划解决日期 |
| ----- | -------- | ---- | ------------ |
| I6SXBI | 【OpenHarmony 3.2.11.6】【RK3568】【压力测试】【ToC】【低概率】【wukong】出现由进程ohos.samples.distributedcalc下的libdistributeddata.z.so cppcrash | 计算器应用快速启动和退出场景,启动后1秒内退出,导致JS对象读取数据库成功前JS对象被析构,只有LOG报错但用户无感知,对2C无影响 | 2023年7月15日 |
| I6TRE6 | 进程com.ohos.contacts下的com.ohos.contacts线程导致libdatashare_consumer.z.so低概率出现crash。 | 联系人应用快速启动和退出场景,发现在启动后600ms内退出,联系人进程低概率出现crash,出现crash后联系人进程会被重新拉起,影响可控。 | 2023年7月15日 |
| I72P5E | 反复进入大图浏览界面后返回,导致libace.z.so出现内存泄露 | 从图库进入大图浏览界面后返回,ArkUI模块每次泄露10kb,应用点返回后,内存回收 | 2023年7月15日 |
| I72P5I | 反复进入某相册的图片宫格浏览界面,导致libace.z.so出现内存泄露 | 进入某相册的图片宫格浏览界面后返回,ArkUI每次泄露19kb,应用点返回后,内存回收 | 2023年7月15日 |
| I76N0Y | 反复在dock栏添加/移除应用,导致libace.z.so出现内存泄露 | 移动卡片到合法区域,ArkUI每次泄露99kb,非常用场景,应用重启内存回收。 | 2023年7月15日 |
| I6XHE7 | NAPIRemoteObject模块内存泄露 | JS应用需要IPC需要建立NAPIRemoteObject对象进程通信,创建一次可以循环使用,建立一次后泄露1.2kb,应用不需要反复创建新对象,泄露量可控,应用进程退出会释放掉 | 2023年7月15日 |
| I7D4CH | 【OpenHarmony】【体验测试】【版本号:3.2.13.1】【rk3568】【ToC】【概率:必现】首次启动短信息完成时延2300ms,实际值2537ms,超基线237ms | 版本为了合入I7CBSM稳定性问题,修改rdb数据锁保护范围,导致联系人加载耗时增加,平均劣化约9%,影响可控,跟踪在后续版本优化。 | 2023年7月15日 |
zh-cn/release-notes/changelogs/OpenHarmony_4.0.9.1/changelogs-security.md
0 → 100644
浏览文件 @
37e2d8b7
# security子系统ChangeLog
## cl.security.1 对API9中已经抛出的异常,补写throws标签
对于在API9中已经抛出异常而JS DOC中漏写throws标签的接口,在since 9的注释中补上throws标签。
**变更影响**
对于已发布的JS接口,可能影响异常处理流程,包括同步异常和异步异常。应用需要根据最新的throws标签,排查是否有遗漏的异常处理流程,结合实际情况进行适配。
**关键的接口/组件变更**
修改前的接口原型:
```
ts
interface
Key
{
/**
* Encode the key object to binary data.
*
* @returns { DataBlob } the binary data of the key object.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
getEncoded
():
DataBlob
;
}
interface
AsyKeyGenerator
{
/**
* Used to generate asymmetric key pair.
*
* @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
generateKeyPair
(
callback
:
AsyncCallback
<
KeyPair
>
):
void
;
/**
* Used to generate asymmetric key pair.
*
* @returns { Promise<KeyPair> } the promise used to return keypair.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
generateKeyPair
():
Promise
<
KeyPair
>
;
/**
* Used to convert asymmetric key data to key pair object.
*
* @param { DataBlob } pubKey - the public key data blob.
* @param { DataBlob } priKey - the private key data blob.
* @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
convertKey
(
pubKey
:
DataBlob
,
priKey
:
DataBlob
,
callback
:
AsyncCallback
<
KeyPair
>
):
void
;
/**
* Used to convert asymmetric key data to key pair object.
*
* @param { DataBlob } pubKey - the public key data blob.
* @param { DataBlob } priKey - the private key data blob.
* @returns { Promise<KeyPair> } the promise used to return keypair.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
convertKey
(
pubKey
:
DataBlob
,
priKey
:
DataBlob
):
Promise
<
KeyPair
>
;
}
/**
* Provides the asymmetric key generator instance func.
*
* @param { string } algName - indicates the algorithm name.
* @returns { AsyKeyGenerator } the generator obj create by algName.
* @throws { BusinessError } 401 - invalid parameters.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function
createAsyKeyGenerator
(
algName
:
string
):
AsyKeyGenerator
;
/**
* Create a cipher object for encryption and decryption operations according to the given specifications.
* Two different Cipher objects should be created when using RSA encryption and decryption,
* even with the same specifications.
*
* @param { string } transformation - indicates the description to be transformed to cipher specifications.
* @returns { Cipher } the cipher object returned by the function.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 801 - this operation is not supported.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function
createCipher
(
transformation
:
string
):
Cipher
;
/**
* Create sign class.
*
* @param { string } algName - indicates the algorithm name and params.
* @returns { Sign } the sign class.
* @throws { BusinessError } 401 - invalid parameters.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function
createSign
(
algName
:
string
):
Sign
;
/**
* Create verify class.
*
* @param { string } algName - indicates the algorithm name and params.
* @returns { Verify } the verify class.
* @throws { BusinessError } 401 - invalid parameters.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function
createVerify
(
algName
:
string
):
Verify
;
/**
* Create key agreement class.
*
* @param { string } algName - indicates the algorithm name and params.
* @returns { KeyAgreement } the key agreement class.
* @throws { BusinessError } 401 - invalid parameters.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function
createKeyAgreement
(
algName
:
string
):
KeyAgreement
;
```
修改后的接口原型:
```
ts
interface
Key
{
/**
* Encode the key object to binary data.
*
* @returns { DataBlob } the binary data of the key object.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 17620001 - memory error.
* @throws { BusinessError } 17630001 - crypto operation error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
getEncoded
():
DataBlob
;
}
interface
AsyKeyGenerator
{
/**
* Used to generate asymmetric keypair.
*
* @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 17620001 - memory error.
* @throws { BusinessError } 17630001 - crypto operation error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
generateKeyPair
(
callback
:
AsyncCallback
<
KeyPair
>
):
void
;
/**
* Used to generate asymmetric keypair.
*
* @returns { Promise<KeyPair> } the promise used to return keypair.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 17620001 - memory error.
* @throws { BusinessError } 17630001 - crypto operation error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
generateKeyPair
():
Promise
<
KeyPair
>
;
/**
* Used to convert asymmetric key data to keypair object.
*
* @param { DataBlob } pubKey - the public key data blob.
* @param { DataBlob } priKey - the private key data blob.
* @param { AsyncCallback<KeyPair> } callback - the callback used to return keypair.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 17620001 - memory error.
* @throws { BusinessError } 17630001 - crypto operation error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
convertKey
(
pubKey
:
DataBlob
,
priKey
:
DataBlob
,
callback
:
AsyncCallback
<
KeyPair
>
):
void
;
/**
* Used to convert asymmetric key data to keypair object.
*
* @param { DataBlob } pubKey - the public key data blob.
* @param { DataBlob } priKey - the private key data blob.
* @returns { Promise<KeyPair> } the promise used to return keypair.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 17620001 - memory error.
* @throws { BusinessError } 17630001 - crypto operation error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
convertKey
(
pubKey
:
DataBlob
,
priKey
:
DataBlob
):
Promise
<
KeyPair
>
;
}
/**
* Create the asymmetric key generator instance according to the given algorithm name.
*
* @param { string } algName - indicates the algorithm name.
* @returns { AsyKeyGenerator } the asymmetric key generator instance.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function
createAsyKeyGenerator
(
algName
:
string
):
AsyKeyGenerator
;
/**
* Create a cipher object for encryption and decryption operations according to the given specifications.
* Two different Cipher objects should be created when using RSA encryption and decryption,
* even with the same specifications.
*
* @param { string } transformation - indicates the description to be transformed to cipher specifications.
* @returns { Cipher } the cipher object returned by the function.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function
createCipher
(
transformation
:
string
):
Cipher
;
/**
* Create a sign object for generating signatures.
*
* @param { string } algName - indicates the algorithm name and params.
* @returns { Sign } the sign class.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function
createSign
(
algName
:
string
):
Sign
;
/**
* Create a verify object for verifying signatures.
*
* @param { string } algName - indicates the algorithm name and the parameters.
* @returns { Verify } the verify class.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function
createVerify
(
algName
:
string
):
Verify
;
/**
* Create a key agreement object.
*
* @param { string } algName - indicates the algorithm name and params.
* @returns { KeyAgreement } the key agreement object.
* @throws { BusinessError } 401 - invalid parameters.
* @throws { BusinessError } 801 - this operation is not supported.
* @throws { BusinessError } 17620001 - memory error.
* @syscap SystemCapability.Security.CryptoFramework
* @since 9
*/
function
createKeyAgreement
(
algName
:
string
):
KeyAgreement
;
```
**适配指导**
由于漏标的throws异常发生在较少见的情况下,应用可以结合实际情况,排查漏标的throws标签是否需要专门适配。
-
对于同步方法,如createSign等,请使用try/catch方式处理错误信息。
-
对于异步方法,如convertKey等,请使用try/catch方式处理同步的参数错误,使用error对象的方式获取异步的参数错误和业务执行错误。
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录