提交 2463edad 编写于 作者: L lsq

新增权限联想

Signed-off-by: Nlsq <linshuqing2@huawei.com>
Change-Id: Ib752f769fc8312f64a06f72a01a4c5a5b64e9c36
上级 9fe87fda
......@@ -38,7 +38,7 @@ var AtManager = abilityAccessCtrl.createAtManager();
### checkAccessToken<sup>9+</sup>
checkAccessToken(tokenID: number, permissionName: string): Promise&lt;GrantStatus&gt;
checkAccessToken(tokenID: number, permissionName: Permissions): Promise&lt;GrantStatus&gt;
校验应用是否授予权限。使用Promise异步回调。
......@@ -49,7 +49,7 @@ checkAccessToken(tokenID: number, permissionName: string): Promise&lt;GrantStatu
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------- | ---- | ------------------------------------------ |
| tokenID | number | 是 | 要校验的目标应用的身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得 |
| permissionName | string | 是 | 需要校验的权限名称。 |
| permissionName | Permissions | 是 | 需要校验的权限名称。 |
**返回值:**
......@@ -84,7 +84,7 @@ try {
### verifyAccessTokenSync<sup>9+</sup>
verifyAccessTokenSync(tokenID: number, permissionName: string): GrantStatus
verifyAccessTokenSync(tokenID: number, permissionName: Permissions): GrantStatus
校验应用是否被授予权限,同步返回结果。
......@@ -95,7 +95,7 @@ verifyAccessTokenSync(tokenID: number, permissionName: string): GrantStatus
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------- | ---- | ------------------------------------------ |
| tokenID | number | 是 | 要校验应用的身份标识。 |
| permissionName | string | 是 | 需要校验的权限名称。 |
| permissionName | Permissions | 是 | 需要校验的权限名称。 |
**返回值:**
......@@ -121,7 +121,7 @@ console.log(`data->${JSON.stringify(data)}`);
### grantUserGrantedPermission
grantUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number): Promise&lt;void&gt;
grantUserGrantedPermission(tokenID: number, permissionName: Permissions, permissionFlag: number): Promise&lt;void&gt;
授予应用user grant权限。使用Promise异步回调。
......@@ -136,7 +136,7 @@ grantUserGrantedPermission(tokenID: number, permissionName: string, permissionFl
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------- | ---- | ------------------------------------------------------------ |
| tokenID | number | 是 | 目标应用的身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得 |
| permissionName | string | 是 | 被授予的权限名称。 |
| permissionName | Permissions | 是 | 被授予的权限名称。 |
| permissionFlag | number | 是 | 授权选项,1表示下次仍需弹窗,2表示允许、禁止后不再提醒,3表示系统授权不允许更改。 |
**返回值:**
......@@ -176,7 +176,7 @@ try {
### grantUserGrantedPermission
grantUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number, callback: AsyncCallback&lt;void&gt;): void
grantUserGrantedPermission(tokenID: number, permissionName: Permissions, permissionFlag: number, callback: AsyncCallback&lt;void&gt;): void
授予应用user grant权限。使用callback异步回调。
......@@ -191,7 +191,7 @@ grantUserGrantedPermission(tokenID: number, permissionName: string, permissionFl
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------- | ---- | ------------------------------------------------------------ |
| tokenID | number | 是 | 目标应用的身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得 |
| permissionName | string | 是 | 被授予的权限名称。 |
| permissionName | Permissions | 是 | 被授予的权限名称。 |
| permissionFlag | number | 是 | 授权选项,1表示下次仍需弹窗,2表示允许、禁止后不再提醒,3表示系统授权不允许更改。 |
| callback | AsyncCallback&lt;void&gt; | 是 | 授予应用user grant权限。当授予权限成功时,err为undefine;否则为错误对象。 |
......@@ -228,7 +228,7 @@ try {
### revokeUserGrantedPermission
revokeUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number): Promise&lt;void&gt;
revokeUserGrantedPermission(tokenID: number, permissionName: Permissions, permissionFlag: number): Promise&lt;void&gt;
撤销应用user grant权限。使用Promise异步回调。
......@@ -243,7 +243,7 @@ revokeUserGrantedPermission(tokenID: number, permissionName: string, permissionF
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------- | ---- | ------------------------------------------------------------ |
| tokenID | number | 是 | 目标应用的身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得 |
| permissionName | string | 是 | 被撤销的权限名称。 |
| permissionName | Permissions | 是 | 被撤销的权限名称。 |
| permissionFlag | number | 是 | 授权选项,1表示下次仍需弹窗,2表示允许、禁止后不再提醒,3表示系统授权不允许更改。 |
**返回值:**
......@@ -283,7 +283,7 @@ try {
### revokeUserGrantedPermission
revokeUserGrantedPermission(tokenID: number, permissionName: string, permissionFlag: number, callback: AsyncCallback&lt;void&gt;): void
revokeUserGrantedPermission(tokenID: number, permissionName: Permissions, permissionFlag: number, callback: AsyncCallback&lt;void&gt;): void
撤销应用user grant权限。使用callback异步回调。
......@@ -298,7 +298,7 @@ revokeUserGrantedPermission(tokenID: number, permissionName: string, permissionF
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------- | ---- | ------------------------------------------------------------ |
| tokenID | number | 是 | 目标应用的身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得 |
| permissionName | string | 是 | 被撤销的权限名称。 |
| permissionName | Permissions | 是 | 被撤销的权限名称。 |
| permissionFlag | number | 是 | 授权选项,1表示下次仍需弹窗,2表示允许、禁止后不再提醒,3表示系统授权不允许更改。 |
| callback | AsyncCallback&lt;void&gt; | 是 | 撤销应用user grant权限。当撤销权限成功时,err为undefine;否则为错误对象。 |
......@@ -335,7 +335,7 @@ try {
### getPermissionFlags
getPermissionFlags(tokenID: number, permissionName: string): Promise&lt;number&gt;
getPermissionFlags(tokenID: number, permissionName: Permissions): Promise&lt;number&gt;
获取指定应用的指定权限的flag。使用Promise异步回调。
......@@ -350,7 +350,7 @@ getPermissionFlags(tokenID: number, permissionName: string): Promise&lt;number&g
| 参数名 | 类型 | 必填 | 说明 |
| --------- | ------------------- | ---- | ------------------------------------------------------------ |
| tokenID | number | 是 | 目标应用的身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得 |
| permissionName | string | 是 | 查询的权限名称。 |
| permissionName | Permissions | 是 | 查询的权限名称。 |
**返回值:**
......@@ -415,7 +415,7 @@ promise.then(data => {
### on<sup>9+</sup>
on(type: 'permissionStateChange', tokenIDList: Array&lt;number&gt;, permissionNameList: Array&lt;string&gt;, callback: Callback&lt;PermissionStateChangeInfo&gt;): void;
on(type: 'permissionStateChange', tokenIDList: Array&lt;number&gt;, permissionNameList: Array&lt;Permissions&gt;, callback: Callback&lt;PermissionStateChangeInfo&gt;): void;
订阅指定tokenId列表与权限列表的权限状态变更事件。
......@@ -431,7 +431,7 @@ on(type: 'permissionStateChange', tokenIDList: Array&lt;number&gt;, permissionNa
| ------------------ | --------------------- | ---- | ------------------------------------------------------------ |
| type | string | 是 | 订阅事件类型,固定为'permissionStateChange',权限状态变更事件。 |
| tokenIDList | Array&lt;number&gt; | 否 | 订阅的tokenId列表,为空时表示订阅所有的应用的权限状态变化。 |
| permissionNameList | Array&lt;string&gt; | 否 | 订阅的权限名列表,为空时表示订阅所有的权限状态变化。 |
| permissionNameList | Array&lt;Permissions&gt; | 否 | 订阅的权限名列表,为空时表示订阅所有的权限状态变化。 |
| callback | Callback&lt;[PermissionStateChangeInfo](#permissionstatechangeinfo9)&gt; | 是 | 订阅指定tokenId与指定权限名状态变更事件的回调。|
**错误码:**
......@@ -462,7 +462,7 @@ try {
### off<sup>9+</sup>
off(type: 'permissionStateChange', tokenIDList: Array&lt;number&gt;, permissionNameList: Array&lt;string&gt;, callback?: Callback&lt;PermissionStateChangeInfo&gt;): void;
off(type: 'permissionStateChange', tokenIDList: Array&lt;number&gt;, permissionNameList: Array&lt;Permissions&gt;, callback?: Callback&lt;PermissionStateChangeInfo&gt;): void;
取消订阅指定tokenId列表与权限列表的权限状态变更事件,使用callback回调异步返回结果。
......@@ -478,7 +478,7 @@ off(type: 'permissionStateChange', tokenIDList: Array&lt;number&gt;, permissionN
| ------------------ | --------------------- | ---- | ------------------------------------------------------------ |
| type | string | 是 | 订阅事件类型,固定为'permissionStateChange',权限状态变更事件。 |
| tokenIDList | Array&lt;number&gt; | 否 | 订阅的tokenId列表,为空时表示订阅所有的应用的权限状态变化,必须与on的输入一致。 |
| permissionNameList | Array&lt;string&gt; | 否 | 订阅的权限名列表,为空时表示订阅所有的权限状态变化,必须与on的输入一致。 |
| permissionNameList | Array&lt;Permissions&gt; | 否 | 订阅的权限名列表,为空时表示订阅所有的权限状态变化,必须与on的输入一致。 |
| callback | Callback&lt;[PermissionStateChangeInfo](#permissionstatechangeinfo9)&gt; | 否 | 取消订阅指定tokenId与指定权限名状态变更事件的回调。|
**错误码:**
......@@ -504,6 +504,42 @@ try {
}
```
### verifyAccessToken<sup>9+</sup>
verifyAccessToken(tokenID: number, permissionName: Permissions): Promise&lt;GrantStatus&gt;
校验应用是否授予权限。使用Promise异步回调。
> **说明:** 建议使用[checkAccessToken](#checkaccesstoken9)替代。
**系统能力:** SystemCapability.Security.AccessToken
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------- | ---- | ------------------------------------------ |
| tokenID | number | 是 | 要校验的目标应用的身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得。 |
| permissionName | Permissions | 是 | 需要校验的权限名称。仅支持输入有效的权限名称。 |
**返回值:**
| 类型 | 说明 |
| :------------ | :---------------------------------- |
| Promise&lt;GrantStatus&gt; | Promise对象。返回授权状态结果。 |
**示例:**
```js
import abilityAccessCtrl from '@ohos.abilityAccessCtrl';
var AtManager = abilityAccessCtrl.createAtManager();
let tokenID = 0; // 可以通过getApplicationInfo获取accessTokenId
let promise = AtManager.verifyAccessToken(tokenID, "ohos.permission.GRANT_SENSITIVE_PERMISSIONS");
promise.then(data => {
console.log(`promise: data->${JSON.stringify(data)}`);
});
```
### verifyAccessToken<sup>(deprecated)</sup>
verifyAccessToken(tokenID: number, permissionName: string): Promise&lt;GrantStatus&gt;
......
......@@ -15,7 +15,7 @@ import privacyManager from '@ohos.privacyManager';
## privacyManager.addPermissionUsedRecord
addPermissionUsedRecord(tokenID: number, permissionName: string, successCount: number, failCount: number): Promise&lt;void&gt;
addPermissionUsedRecord(tokenID: number, permissionName: Permissions, successCount: number, failCount: number): Promise&lt;void&gt;
受应用权限保护的应用在被其他服务、应用调用时,可以使用该接口增加一条权限使用记录。使用Promise异步回调。
权限使用记录包括:调用方的应用身份标识、使用的应用权限名称,和其访问本应用成功、失败的次数。
......@@ -29,7 +29,7 @@ addPermissionUsedRecord(tokenID: number, permissionName: string, successCount: n
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------- | ---- | ------------------------------------------ |
| tokenID | number | 是 | 调用方的应用身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得。 |
| permissionName | string | 是 | 应用权限名称。 |
| permissionName | Permissions | 是 | 应用权限名称。 |
| successCount | number | 是 | 访问成功的次数。 |
| failCount | number | 是 | 访问失败的次数。 |
......@@ -67,7 +67,7 @@ try {
## privacyManager.addPermissionUsedRecord
addPermissionUsedRecord(tokenID: number, permissionName: string, successCount: number, failCount: number, callback: AsyncCallback&lt;void&gt;): void
addPermissionUsedRecord(tokenID: number, permissionName: Permissions, successCount: number, failCount: number, callback: AsyncCallback&lt;void&gt;): void
受应用权限保护的应用在被其他服务、应用调用时,可以使用该接口增加一条权限使用记录。使用callback异步回调。
权限使用记录包括:调用方的应用身份标识、使用的应用权限名称,和其访问本应用成功、失败的次数。
......@@ -81,7 +81,7 @@ addPermissionUsedRecord(tokenID: number, permissionName: string, successCount: n
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------- | ---- | ------------------------------------------ |
| tokenID | number | 是 | 调用方的应用身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得。 |
| permissionName | string | 是 | 应用权限名称。 |
| permissionName | Permissions | 是 | 应用权限名称。 |
| successCount | number | 是 | 访问成功的次数。 |
| failCount | number | 是 | 访问失败的次数。 |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调函数。当添加使用记录成功时,err为undefine;否则为错误对象。 |
......@@ -227,7 +227,7 @@ try {
## privacyManager.startUsingPermission
startUsingPermission(tokenID: number, permissionName: string): Promise&lt;void&gt;
startUsingPermission(tokenID: number, permissionName: Permissions): Promise&lt;void&gt;
应用开始使用某项权限,可监听应用在前后台使用权限,并将使用权限的记录落盘,由系统服务调用。使用Promise异步回调。
......@@ -240,7 +240,7 @@ startUsingPermission(tokenID: number, permissionName: string): Promise&lt;void&g
| 参数名 | 类型 | 必填 | 说明 |
| -------------- | ------ | ---- | ------------------------------------ |
| tokenID | number | 是 | 调用方的应用身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得。 |
| permissionName | string | 是 | 需要使用的权限名。 |
| permissionName | Permissions | 是 | 需要使用的权限名。 |
**返回值:**
......@@ -277,7 +277,7 @@ try {
## privacyManager.startUsingPermission
startUsingPermission(tokenID: number, permissionName: string, callback: AsyncCallback&lt;void&gt;): void
startUsingPermission(tokenID: number, permissionName: Permissions, callback: AsyncCallback&lt;void&gt;): void
应用开始使用某项权限,可监听应用在前后台使用权限,并将使用权限的记录落盘,由系统服务调用。使用callback异步回调。
......@@ -290,7 +290,7 @@ startUsingPermission(tokenID: number, permissionName: string, callback: AsyncCal
| 参数名 | 类型 | 必填 | 说明 |
| -------------- | --------------------- | ---- | ------------------------------------ |
| tokenID | number | 是 | 调用方的应用身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得。 |
| permissionName | string | 是 | 需要使用的权限名。 |
| permissionName | Permissions | 是 | 需要使用的权限名。 |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调函数。当开始使用权限成功时,err为undefine;否则为错误对象。 |
**错误码:**
......@@ -337,7 +337,7 @@ stopUsingPermission(tokenID: number, permissionName: string): Promise&lt;void&gt
| 参数名 | 类型 | 必填 | 说明 |
| -------------- | ------ | ---- | ------------------------------------ |
| tokenID | number | 是 | 调用方的应用身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得。 |
| permissionName | string | 是 | 需要使用的权限名。 |
| permissionName | Permissions | 是 | 需要使用的权限名。 |
**返回值:**
......@@ -374,7 +374,7 @@ try {
## privacyManager.stopUsingPermission
stopUsingPermission(tokenID: number, permissionName: string, callback: AsyncCallback&lt;void&gt;): void
stopUsingPermission(tokenID: number, permissionName: Permissions, callback: AsyncCallback&lt;void&gt;): void
应用停止使用某项权限,与Start对应,由系统服务调用。使用callback异步回调。
......@@ -387,7 +387,7 @@ stopUsingPermission(tokenID: number, permissionName: string, callback: AsyncCall
| 参数名 | 类型 | 必填 | 说明 |
| -------------- | --------------------- | ---- | ------------------------------------ |
| tokenID | number | 是 | 调用方的应用身份标识。可通过应用的[ApplicationInfo](js-apis-bundle-ApplicationInfo.md)获得。 |
| permissionName | string | 是 | 需要使用的权限名。 |
| permissionName | Permissions | 是 | 需要使用的权限名。 |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调函数。当停止使用权限成功时,err为undefine;否则为错误对象。 |
**错误码:**
......@@ -421,7 +421,7 @@ try {
## privacyManager.on
on(type: 'activeStateChange', permissionNameList: Array&lt;string&gt;, callback: Callback&lt;ActiveChangeResponse&gt;): void
on(type: 'activeStateChange', permissionNameList: Array&lt;Permissions&gt;, callback: Callback&lt;ActiveChangeResponse&gt;): void
订阅指定权限列表的权限使用状态变更事件。
......@@ -434,7 +434,7 @@ on(type: 'activeStateChange', permissionNameList: Array&lt;string&gt;, callback:
| 参数名 | 类型 | 必填 | 说明 |
| ------------------ | --------------------- | ---- | ------------------------------------------------------------ |
| type | string | 是 | 订阅事件类型,固定为'activeStateChange',权限使用状态变更事件。 |
| permissionNameList | Array&lt;string&gt; | 否 | 订阅的权限名列表,为空时表示订阅所有的权限使用状态变化。 |
| permissionNameList | Array&lt;Permissions&gt; | 否 | 订阅的权限名列表,为空时表示订阅所有的权限使用状态变化。 |
| callback | Callback&lt;[ActiveChangeResponse](#activechangeresponse)&gt; | 是 | 订阅指定权限使用状态变更事件的回调。 |
**错误码:**
......@@ -463,7 +463,7 @@ try {
## privacyManager.off
off(type: 'activeStateChange', permissionNameList: Array&lt;string&gt;, callback?: Callback&lt;ActiveChangeResponse&gt;): void;
off(type: 'activeStateChange', permissionNameList: Array&lt;Permissions&gt;, callback?: Callback&lt;ActiveChangeResponse&gt;): void;
取消订阅指定权限列表的权限使用状态变更事件。
......@@ -476,7 +476,7 @@ off(type: 'activeStateChange', permissionNameList: Array&lt;string&gt;, callback
| 参数名 | 类型 | 必填 | 说明 |
| ------------------ | --------------------- | ---- | ------------------------------------------------------------ |
| type | string | 是 | 订阅事件类型,固定为'activeStateChange',权限使用状态变更事件。 |
| permissionNameList | Array&lt;string&gt; | 否 | 订阅的权限名列表,为空时表示订阅所有的权限状态变化,必须与on的输入一致。 |
| permissionNameList | Array&lt;Permissions&gt; | 否 | 订阅的权限名列表,为空时表示订阅所有的权限状态变化,必须与on的输入一致。 |
| callback | Callback&lt;[ActiveChangeResponse](#activechangeresponse)&gt; | 否 | 取消订阅指定tokenId与指定权限名状态变更事件的回调。|
**错误码:**
......@@ -523,7 +523,7 @@ try {
| isRemote | boolean | 否 | 默认值false。 |
| deviceId | string | 否 | 目标应用所在设备的ID。 |
| bundleName | string | 否 | 目标应用的包名。 |
| permissionNames | Array&lt;string&gt; | 否 | 需要查询的权限集合。 |
| permissionNames | Array&lt;Permissions&gt; | 否 | 需要查询的权限集合。 |
| beginTime | number | 否 | 查询的起始时间,单位:ms,默认值0,不设定起始时间。 |
| endTime | number | 否 | 查询的终止时间,单位:ms,默认值0,不设定终止时间。 |
| flag | [PermissionUsageFlag](#permissionusageflag) | 是 | 查询方式,默认值FLAG_PERMISSION_USAGE_SUMMARY。 |
......@@ -562,7 +562,7 @@ try {
| 名称 | 类型 | 必填 | 说明 |
| -------- | -------------- | ---- | ---------------------------------------- |
| permissionName | string | 否 | 权限名。 |
| permissionName | Permissions | 否 | 权限名。 |
| accessCount | number | 否 | 该权限访问总次数。 |
| rejectCount | number | 否 | 该权限拒绝总次数。 |
| lastAccessTime | number | 否 | 最后一次访问时间,单位:ms。 |
......@@ -604,6 +604,6 @@ try {
| 名称 | 类型 | 可读 | 可写 | 说明 |
| -------------- | ---------------------- | ---- | ---- | --------------------- |
| tokenId | number | 是 | 否 | 被订阅的应用身份标识 |
| permissionName | string | 是 | 否 | 权限使用状态发生变化的权限名 |
| permissionName | Permissions | 是 | 否 | 权限使用状态发生变化的权限名 |
| deviceId | string | 是 | 否 | 设备号 |
| activeStatus | [PermissionActiveStatus](#permissionactivestatus) | 是 | 否 | 权限使用状态变化类型 |
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册