提交 49108dac 编写于 作者: W wangtiantian

IssueNo: #I54OHN : bms add new interface

Description:bms add new interface
Sig:SIG_ApplicaitonFramework
Feature or Bugfix:Feature
Binary Source:No
Signed-off-by: Nwangtiantian <wangtiantian19@huawei.com>
上级 0bd2343c
......@@ -109,6 +109,8 @@ module.json示例:
"voip",
"taskKeeping"
],
"startWindowIcon": "$media:icon",
"startWindowBackground": "$color:red"
}
],
"abilities": [
......@@ -141,6 +143,8 @@ module.json示例:
"voip",
"taskKeeping"
],
"startWindowIcon": "$media:icon",
"startWindowBackground": "$color:red"
}
],
"requestPermissions": [
......@@ -313,6 +317,8 @@ abilities描述ability的配置信息,标签值为数组类型。
| continuable | 该标签标识ability是否可以迁移,为布尔类型,true表示可以被迁移, false表示不可以被迁移。 | 布尔值 | 该标签可缺省,缺省值为false。 |
| skills | 该标签标识ability能够接收的意图的特征集,为数组格式。<br />配置规则 : entry包可以配置多个具有入口能力的skills标签(配置了action.system.home和entity.system.home)的ability,其中第一个配置了skills标签的ability中的label和icon作为OpenHarmony服务或应用的label和icon。<br/>OpenHarmony服务的Feature包不能配置具有入口能力的skills标签。<br/>OpenHarmony应用的Feature包可以配置具有入口能力的skills标签。 <br />skills内部结构参考[skills对象内部结构](#skills对象内部结构)。 | 数组 | 该标签可缺省,缺省值为空。 |
| backgroundModes | 该标签标识ability长时任务集合。指定用于满足特定类型的长时任务。<br />长时任务类型有如下 :<br/>dataTransfer :通过网络/对端设备进行数据下载、备份、分享、传输等业务。<br/>audioPlayback :音频输出业务。<br/>audioRecording :音频输入业务。<br/>location :定位、导航业务。<br/>bluetoothInteraction :蓝牙扫描、连接、传输业务(穿戴)。<br/>multiDeviceConnection :多设备互联业务。<br/>wifiInteraction :Wifi扫描、连接、传输业务(克隆 多屏)。<br/>voip :音视频电话,VOIP业务。<br/>taskKeeping :计算业务。 <br/> | 字符串 | 可缺省,缺省为空。 |
| startWindowIcon | 表示该Ability启动页面图标资源文件的索引。取值示例:$media:icon。 | 字符串 | 不可缺省。 |
| startWindowBackground | 表示该Ability启动页面背景颜色资源文件的索引。取值示例:$color:red。 | 字符串 | 不可缺省。 |
abilities示例
......@@ -345,6 +351,8 @@ abilities示例
"voip",
"taskKeeping"
],
"startWindowIcon": "$media:icon",
"startWindowBackground": "$color:red"
}],
}
```
......@@ -439,7 +447,7 @@ skills示例
| description | 该标签标识extensionAbility的描述,标签值是是字符串类型或对描述内容的资源索引,以支持多语言。 | 字符串 | 该标签可缺省,缺省值为空。 |
| icon | 该标签标识extensionAbility图标,标签值为资源文件的索引。如果extensionAbility被配置为MainElement,该标签必须配置。 | 字符串 | 该标签可缺省,缺省值为空。 |
| label | 该标签标识extensionAbility对用户显示的名称,标签值配置为该名称的资源索引以支持多语言。<br/>如果extensionAbility被配置为MainElement,该标签必须配置,且应用内唯一。 | 字符串 | 该标签不可缺省。 |
| type | 该标签标识extensionAbility的类型,取值为form、workScheduler、inputMethod、service、accessibility、dataShare、fileShare、staticSubscriber、wallpaper其中之一。 | 字符串 | 该标签不可缺省。 |
| type | 该标签标识extensionAbility的类型,取值为form、workScheduler、inputMethod、service、accessibility、dataShare、fileShare、staticSubscriber、wallpaper、backup其中之一。 | 字符串 | 该标签不可缺省。 |
| permissions | 该标签标识被其它应用的ability调用时需要申请的权限的集合,字符串数组类型,每个数组元素为一个权限名称,通常采用反向域名方式表示(最大255字节),可以是系统预定义的权限,也可以是该应用自定义的权限。如果是后者,需与defPermissions标签中定义的某个权限的name标签值一致。 | 字符串数组 | 该标签可缺省,缺省值为空。 |
| uri | 该标签标识ability提供的数据uri,为字符数组类型(最大长度255),用反向域名的格式表示。该标签在type为dataShare类型的extensionAbility时,不可缺省。 | 字符串 | 该标签可缺省,缺省值为空。 |
| skills | 该标签标识ability能够接收的意图的特征集,为数组格式。<br />配置规则 : entry包可以配置多个具有入口能力的skills标签(配置了action.system.home和entity.system.home)的ability,其中第一个配置了skills标签的ability中的label和icon作为OpenHarmony服务或应用的label和icon。<br/>OpenHarmony服务的Feature包不能配置具有入口能力的skills标签。<br/>OpenHarmony应用的Feature包可以配置具有入口能力的skills标签。 <br />skills内部结构参考[skills对象内部结构](#skills对象内部结构)。 | 数组 | 该标签可缺省,缺省值为空。 |
......
......@@ -373,6 +373,8 @@ metaData示例:
| srcLanguage | Ability开发语言的类型。 | 字符串 | 取值为java、js或ets |
| srcPath | 该标签表示Ability对应的JS组件代码路径 | 字符串 | 可缺省,缺省值为空。 |
| uriPermission | 表示该Ability有权访问的应用程序数据。此属性由模式和路径子属性组成。此属性仅对类型提供者的能力有效。运行OHOS的设备不支持此属性。参考表18。 | 对象 | 可缺省,缺省值为空。 |
| startWindowIcon | 表示该Ability启动页面图标资源文件的索引。取值示例:$media:icon。 | 字符串 | 可缺省,缺省值为空。 |
| startWindowBackground | 表示该Ability启动页面背景颜色资源文件的索引。取值示例:$color:red。 | 字符串 | 可缺省,缺省值为空。 |
表18 uriPermission对象的内部结构说明
......@@ -411,7 +413,9 @@ abilities示例:
"fontSize",
"orientation"
],
"type": "page"
"type": "page",
"startWindowIcon": "$media:icon",
"startWindowBackground": "$color:red"
},
{
"name": ".PlayService",
......
......@@ -568,6 +568,85 @@ bundle.getAbilityInfo(bundleName, abilityName, (err, data) => {
console.info('Operation successful. Data:' + JSON.stringify(data));
})
```
## bundle.getAbilityInfo<sup>9+</sup>
getAbilityInfo(bundleName: string, moduleName: string, abilityName: string): Promise\<AbilityInfo>
通过包名称、moduleName和abilityName获取Ability信息,使用Promise形式返回结果。
**需要权限:**
ohos.permission.GET_BUNDLE_INFO_PRIVILEGED,ohos.permission.GET_BUNDLE_INFO
**系统能力:**
SystemCapability.BundleManager.BundleFramework
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ----------- | ------ | ---- | ---------------- |
| bundleName | string | 是 | 应用程序包名。 |
| moduleName | string | 是 | Module名称。 |
| abilityName | string | 是 | Ability名称。 |
**返回值:**
| 类型 | 说明 |
| --------------------- | --------------------- |
| Promise\<AbilityInfo> | Promise形式返回Ability信息。 |
**示例:**
```js
let bundleName = "com.example.myapplication";
let moduleName = "entry";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityInfo(bundleName, moduleName, abilityName)
.then((data) => {
console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) => {
console.error('Operation failed. Cause: ' + JSON.stringify(error));
})
```
## bundle.getAbilityInfo<sup>9+</sup>
getAbilityInfo(bundleName: string, moduleName: string, abilityName: string, callback: AsyncCallback\<AbilityInfo>): void;
通过包名称、moduleName和abilityName获取Ability信息,使用callback形式返回结果。
**需要权限:**
ohos.permission.GET_BUNDLE_INFO_PRIVILEGED,ohos.permission.GET_BUNDLE_INFO
**系统能力:**
SystemCapability.BundleManager.BundleFramework
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ----------- | ------------ | ---- | ---------------- |
| bundleName | string | 是 | 应用程序包名。 |
| moduleName | string | 是 | Module名称。 |
| abilityName | string | 是 | Ability名称。 |
| callback | AsyncCallback\<AbilityInfo> | 是 | 程序启动作为入参的回调函数,返回Ability信息。 |
**示例:**
```js
let bundleName = "com.example.myapplication";
let moduleName = "entry";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityInfo(bundleName, moduleName, abilityName, (err, data) => {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
})
```
## bundle.getAbilityLabel<sup>8+</sup>
......@@ -644,6 +723,85 @@ bundle.getAbilityLabel(bundleName, abilityName, (err, data) => {
console.info('Operation successful. Data:' + JSON.stringify(data));
})
```
## bundle.getAbilityLabel<sup>9+</sup>
getAbilityLabel(bundleName: string, moduleName: string, abilityName: string): Promise\<string>
通过包名称、moduleName和abilityName获取应用名称,使用Promise形式返回结果。
**需要权限:**
ohos.permission.GET_BUNDLE_INFO_PRIVILEGED,ohos.permission.GET_BUNDLE_INFO
**系统能力:**
SystemCapability.BundleManager.BundleFramework
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ----------- | ------ | ---- | ---------------- |
| bundleName | string | 是 | 应用程序包名。 |
| moduleName | string | 是 | Module名称。 |
| abilityName | string | 是 | Ability名称。 |
**返回值:**
| 类型 | 说明 |
| ---------------- | ------------------ |
| Promise\<string> | Promise形式返回应用名称信息。 |
**示例:**
```js
let bundleName = "com.example.myapplication";
let moduleName = "entry";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityLabel(bundleName, moduleName, abilityName)
.then((data) => {
console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) => {
console.error('Operation failed. Cause: ' + JSON.stringify(error));
})
```
## bundle.getAbilityLabel<sup>9+</sup>
getAbilityLabel(bundleName: string, moduleName: string, abilityName: string, callback : AsyncCallback\<string>): void
通过包名称、moduleName和abilityName获取应用名称,使用callback形式返回结果。
**需要权限:**
ohos.permission.GET_BUNDLE_INFO_PRIVILEGED,ohos.permission.GET_BUNDLE_INFO
**系统能力:**
SystemCapability.BundleManager.BundleFramework
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ----------- | ---------------------- | ---- | ---------------- |
| bundleName | string | 是 | 应用程序包名。 |
| moduleName | string | 是 | Module名称。 |
| abilityName | string | 是 | Ability名称。 |
| callback | AsyncCallback\<string> | 是 | 程序启动作为入参的回调函数,返回应用名称信息。 |
**示例:**
```js
let bundleName = "com.example.myapplication";
let moduleName = "entry";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityLabel(bundleName, moduleName, abilityName, (err, data) => {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
})
```
## bundle.isAbilityEnabled<sup>8+</sup>
......@@ -1081,8 +1239,8 @@ SystemCapability.BundleManager.BundleFramework
**示例:**
```js
let bundleName = com.example.myapplication;
let abilityName = com.example.myapplication.MainAbility;
let bundleName = "com.example.myapplication";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityIcon(bundleName, abilityName)
.then((data) => {
console.info('Operation successful. Data: ' + JSON.stringify(data));
......@@ -1116,8 +1274,8 @@ SystemCapability.BundleManager.BundleFramework
**示例:**
```js
let bundleName = com.example.myapplication;
let abilityName = com.example.myapplication.MainAbility;
let bundleName = "com.example.myapplication";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityIcon(bundleName, abilityName, (err, data) => {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
......@@ -1127,6 +1285,84 @@ bundle.getAbilityIcon(bundleName, abilityName, (err, data) => {
})
```
## bundle.getAbilityIcon<sup>9+</sup>
getAbilityIcon(bundleName: string, moduleName: string, abilityName: string): Promise\<image.PixelMap>;
以异步方法通过bundleName、moduleName和abilityName获取对应Icon的[PixelMap](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-image.md),使用Promise形式返回结果。
**需要权限:**
ohos.permission.GET_BUNDLE_INFO_PRIVILEGED, ohos.permission.GET_BUNDLE_INFO
**系统能力:**
SystemCapability.BundleManager.BundleFramework
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ----------- | ---------------------------------------- | ---- | ---------------------------------------- |
| bundleName | string | 是 | 要查询的bundleName。 |
| moduleName | string | 是 | moduleName。 |
| abilityName | string | 是 | 要查询的abilityName。 |
**返回值:**
| 类型 | 说明 |
| --------------------- | ------------------------------------------------------------ |
| Promise\<image.PixelMap> | 返回值为[PixelMap](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-image.md)。 |
**示例:**
```js
let bundleName = "com.example.myapplication";
let moduleName = "entry";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityIcon(bundleName, moduleName, abilityName)
.then((data) => {
console.info('Operation successful. Data: ' + JSON.stringify(data));
}).catch((error) => {
console.error('Operation failed. Cause: ' + JSON.stringify(error));
})
```
## bundle.getAbilityIcon<sup>9+</sup>
getAbilityIcon(bundleName: string, moduleName: string, abilityName: string, callback: AsyncCallback\<image.PixelMap>): void;
以异步方法通过bundleName、moduleName和abilityName获取对应Icon的[PixelMap](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-image.md),使用callback形式返回结果。
**需要权限:**
ohos.permission.GET_BUNDLE_INFO_PRIVILEGED, ohos.permission.GET_BUNDLE_INFO
**系统能力:**
SystemCapability.BundleManager.BundleFramework
**参数:**
| 名称 | 类型 | 必填 | 描述 |
| ----------- | ---------------------------------------- | ---- | ---------------------------------------- |
| bundleName | string | 是 | 要查询的bundleName。 |
| moduleName | string | 是 | moduleName。 |
| abilityName | string | 是 | 要查询的abilityName。 |
| callback | AsyncCallback\<image.PixelMap> | 是 | 程序启动作为入参的回调函数,返回指定[PixelMap](https://gitee.com/openharmony/docs/blob/master/zh-cn/application-dev/reference/apis/js-apis-image.md)。 |
**示例:**
```js
let bundleName = "com.example.myapplication";
let moduleName = "entry";
let abilityName = "com.example.myapplication.MainAbility";
bundle.getAbilityIcon(bundleName, moduleName, abilityName, (err, data) => {
if (err) {
console.error('Operation failed. Cause: ' + JSON.stringify(err));
return;
}
console.info('Operation successful. Data:' + JSON.stringify(data));
})
```
## bundle.queryExtensionAbilityInfosByWant<sup>9+</sup>
......@@ -1451,6 +1687,7 @@ Hap模块信息
| --------- | --------- | ---- | ---- | ---------- |
| name | string | 是 | 是 | 需要使用的权限名称 |
| reason | string | 是 | 是 | 描述申请权限的原因 |
| reasonId<sup>9+</sup> | number | 是 | 是 | 描述申请权限的原因ID |
| usedScene | UsedScene | 是 | 是 | 权限使用的场景和时机 |
## UsedScene
......@@ -1568,7 +1805,8 @@ ExtensionAbility的类型
| FILE_SHARE<sup>9+</sup> | 6 | ExtensionAbility的类型包括文件共享 |
| STATIC_SUBSCRIBER<sup>9+</sup> | 7 | ExtensionAbility的类型包括订阅者 |
| WALLPAPER<sup>9+</sup> | 8 | ExtensionAbility的类型包括墙纸 |
| UNSPECIFIED<sup>9+</sup> | 9 | ExtensionAbility未指定类型 |
| BACKUP<sup>9+</sup> | 9 | ExtensionAbility的类型包括数据备份恢复 |
| UNSPECIFIED<sup>9+</sup> | 20 | ExtensionAbility未指定类型 |
## ExtensionFlag<sup>9+</sup>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册