uriPermissionManager

icon-note.gif NOTE The initial APIs of this module are supported since API version 9. Newly added APIs will be marked with a superscript to indicate their earliest API version.

Implements URI permission management.

Modules to Import

import uriPermissionManager from '@ohos.application.uriPermissionManager';

uriPermissionManager.verifyUriPermission

verifyUriPermission(uri: string, flag: wantConstant.Flags, accessTokenId: number, callback: AsyncCallback<number>): void

Checks whether an application has the permission specified by flag for an URI. This API uses a callback to return the result.

System capability:

SystemCapability.Ability.AbilityRuntime.Core

Parameters

Name Type Mandatory Description
uri string Yes URI of a file, for example, fileshare:///com.samples.filesharetest.FileShare/person/10.
flag wantConstant.Flags Yes Read or write permission on the file specified by the URI.
accessTokenId number Yes Unique ID of an application, which is obtained through the BundleManager API.
callback AsyncCallback<number> Yes Callback used to return the check result. The value 0 means that the application has the specified permission, and -1 means the opposite.

Example

let uri = "fileshare:///com.samples.filesharetest.FileShare/person/10"
UriPermissionManager.verifyUriPermission(uri, wantConstant.Flags.FLAG_AUTH_READ_URI_PERMISSION, accessTokenId, (result) => {
    console.log("result.code = " + result.code)
}) // accessTokenId is obtained through the **BundleManager** API.

uriPermissionManager.verifyUriPermission

verifyUriPermission(uri: string, flag: wantConstant.Flags, accessTokenId: number): Promise<number>

Checks whether an application has the permission specified by flag for an URI. This API uses a promise to return the result.

System capability:

SystemCapability.Ability.AbilityRuntime.Core

Parameters

Name Type Mandatory Description
uri string Yes URI of a file, for example, fileshare:///com.samples.filesharetest.FileShare/person/10.
flag wantConstant.Flags Yes Read or write permission on the file specified by the URI.
accessTokenId number Yes Unique ID of an application, which is obtained through the BundleManager API.

Return value

Type Description
Promise<number> Promise used to return the check result. The value 0 means that the application has the specified permission, and -1 means the opposite.

Example

let uri = "fileshare:///com.samples.filesharetest.FileShare/person/10"
UriPermissionManager.verifyUriPermission(uri, wantConstant.Flags.FLAG_AUTH_READ_URI_PERMISSION, accessTokenId)
.then((data) => {
    console.log('Verification succeeded.' + data)
}).catch((error) => {
    console.log('Verification failed.');
})