From 28b7473ef9384269f9a6a369c407e996e8d60ea6 Mon Sep 17 00:00:00 2001 From: lsq Date: Mon, 5 Dec 2022 20:39:58 +0800 Subject: [PATCH] fixed 74dcaad from https://gitee.com/y1585740638/interface_sdk-js/pulls/3699 Description:requestPermissionFromUser deprecated Sig:SIG_ApplicationFramework Feature or Bugfix:Feature Binary Source:No Signed-off-by: yuwenze Change-Id: I244a4c6b2c9d4e44a8db543a4e9f1f932dff40ac Signed-off-by: lsq --- api/@ohos.abilityAccessCtrl.d.ts | 17 ++++++++ api/@ohos.app.ability.common.d.ts | 1 + api/@ohos.application.context.d.ts | 1 + api/@ohos.privacyManager.d.ts | 5 ++- api/application/AbilityContext.d.ts | 4 ++ api/application/PermissionRequestResult.d.ts | 2 + api/application/UIAbilityContext.d.ts | 4 ++ api/security/PermissionRequestResult.d.ts | 43 ++++++++++++++++++++ 8 files changed, 75 insertions(+), 2 deletions(-) create mode 100755 api/security/PermissionRequestResult.d.ts diff --git a/api/@ohos.abilityAccessCtrl.d.ts b/api/@ohos.abilityAccessCtrl.d.ts index 397550dc4e..735e9ff36f 100644 --- a/api/@ohos.abilityAccessCtrl.d.ts +++ b/api/@ohos.abilityAccessCtrl.d.ts @@ -15,6 +15,8 @@ import { AsyncCallback, Callback } from './basic'; import { Permissions } from './permissions'; +import Context from "./application/Context"; +import PermissionRequestResult from "./security/PermissionRequestResult"; /** * @syscap SystemCapability.Security.AccessToken @@ -74,6 +76,20 @@ import { Permissions } from './permissions'; */ checkAccessToken(tokenID: number, permissionName: Permissions): Promise; + /** + * Requests certain permissions from the user. + * + * @param context The context that initiates the permission request. + * @param permissions Indicates the list of permissions to be requested. This parameter cannot be null or empty. + * @returns Returns the {@link PermissionRequestResult}. + * @throws { BusinessError } 401 - The parameter check failed. + * @throws { BusinessError } 12100001 - The parameter is invalid. The context is invalid when it does not belong to the application itself. + * @since 9 + * @StageModelOnly + */ + requestPermissionsFromUser(context: Context, permissions: Array, requestCallback: AsyncCallback) : void; + requestPermissionsFromUser(context: Context, permissions: Array) : Promise; + /** * Grants a specified user_grant permission to the given application. * @param tokenID The tokenId of specified application. @@ -244,3 +260,4 @@ import { Permissions } from './permissions'; } export default abilityAccessCtrl; + export { Permissions }; \ No newline at end of file diff --git a/api/@ohos.app.ability.common.d.ts b/api/@ohos.app.ability.common.d.ts index 0661aafb08..b32a7effba 100755 --- a/api/@ohos.app.ability.common.d.ts +++ b/api/@ohos.app.ability.common.d.ts @@ -121,6 +121,7 @@ declare namespace common { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly * @since 9 + * @deprecated since 9 */ export type PermissionRequestResult = _PermissionRequestResult.default diff --git a/api/@ohos.application.context.d.ts b/api/@ohos.application.context.d.ts index da1ee4f905..be53b9d891 100755 --- a/api/@ohos.application.context.d.ts +++ b/api/@ohos.application.context.d.ts @@ -114,6 +114,7 @@ declare namespace context { * @since 9 * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly + * @deprecated since 9 */ export type PermissionRequestResult = _PermissionRequestResult.default } diff --git a/api/@ohos.privacyManager.d.ts b/api/@ohos.privacyManager.d.ts index 3df5040052..5ebddceac4 100644 --- a/api/@ohos.privacyManager.d.ts +++ b/api/@ohos.privacyManager.d.ts @@ -44,7 +44,7 @@ import { Permissions } from './permissions' /** * Queries the access records of sensitive permission. * @param request The request of permission used records. - * @return Return the response of permission used records. + * @returns Return the response of permission used records. * @throws { BusinessError } 401 - The parameter check failed. * @throws { BusinessError } 201 - Permission denied. Interface caller does not have permission "ohos.permission.PERMISSION_USED_STATS". * @throws { BusinessError } 12100001 - The parameter is invalid. the value of flag in request is invalid. @@ -365,4 +365,5 @@ import { Permissions } from './permissions' } } -export default privacyManager; \ No newline at end of file +export default privacyManager; +export { Permissions }; \ No newline at end of file diff --git a/api/application/AbilityContext.d.ts b/api/application/AbilityContext.d.ts index daadec9e02..325d3d1d7c 100755 --- a/api/application/AbilityContext.d.ts +++ b/api/application/AbilityContext.d.ts @@ -532,6 +532,8 @@ export default class AbilityContext extends Context { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly * @since 9 + * @deprecated since 9 + * @useinstead @ohos.abilityAccessCtrl.requestPermissionsFromUser */ requestPermissionsFromUser(permissions: Array, requestCallback: AsyncCallback): void; @@ -544,6 +546,8 @@ export default class AbilityContext extends Context { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly * @since 9 + * @deprecated since 9 + * @useinstead @ohos.abilityAccessCtrl.requestPermissionsFromUser */ requestPermissionsFromUser(permissions: Array): Promise; diff --git a/api/application/PermissionRequestResult.d.ts b/api/application/PermissionRequestResult.d.ts index a3d8d6ae04..f98382c0be 100755 --- a/api/application/PermissionRequestResult.d.ts +++ b/api/application/PermissionRequestResult.d.ts @@ -20,6 +20,8 @@ * @syscap SystemCapability.Ability.AbilityRuntime.Core * @permission N/A * @StageModelOnly + * @deprecated since 9 + * @useinstead security/PermissionRequestResult */ export default class PermissionRequestResult { /** diff --git a/api/application/UIAbilityContext.d.ts b/api/application/UIAbilityContext.d.ts index bfa3f64185..9b0a5f9b30 100755 --- a/api/application/UIAbilityContext.d.ts +++ b/api/application/UIAbilityContext.d.ts @@ -486,6 +486,8 @@ export default class UIAbilityContext extends Context { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly * @since 9 + * @deprecated since 9 + * @useinstead @ohos.abilityAccessCtrl.requestPermissionsFromUser */ requestPermissionsFromUser(permissions: Array, requestCallback: AsyncCallback): void; @@ -498,6 +500,8 @@ export default class UIAbilityContext extends Context { * @syscap SystemCapability.Ability.AbilityRuntime.Core * @StageModelOnly * @since 9 + * @deprecated since 9 + * @useinstead @ohos.abilityAccessCtrl.requestPermissionsFromUser */ requestPermissionsFromUser(permissions: Array): Promise; diff --git a/api/security/PermissionRequestResult.d.ts b/api/security/PermissionRequestResult.d.ts new file mode 100755 index 0000000000..1d221898d7 --- /dev/null +++ b/api/security/PermissionRequestResult.d.ts @@ -0,0 +1,43 @@ +/* + * Copyright (c) 2022 Huawei Device Co., Ltd. + * Licensed under the Apache License, Version 2.0 (the "License"), + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/** + * The result of requestPermissionsFromUser with asynchronous callback. + * + * @since 9 + * @syscap SystemCapability.Security.AccessToken + * @permission N/A + * @StageModelOnly + */ +export default class PermissionRequestResult { + /** + * The permissions passed in by the user. + * + * @since 9 + * @syscap SystemCapability.Security.AccessToken + * @StageModelOnly + */ + permissions: Array; + + /** + * The results for the corresponding request permissions. The value 0 indicates that a + * permission is granted, and the value -1 indicates not. + * + * @since 9 + * @syscap SystemCapability.Security.AccessToken + * @StageModelOnly + */ + authResults: Array; +} \ No newline at end of file -- Gitee