Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
2e2b6184
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看板
未验证
提交
2e2b6184
编写于
4月 12, 2023
作者:
O
openharmony_ci
提交者:
Gitee
4月 12, 2023
浏览文件
操作
浏览文件
下载
差异文件
!16844 新增uri_permission相关接口
Merge pull request !16844 from gongyuechen/master
上级
c3aef7ba
9b5f561d
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
153 addition
and
0 deletion
+153
-0
zh-cn/application-dev/reference/apis/js-apis-uripermissionmanager.md
...cation-dev/reference/apis/js-apis-uripermissionmanager.md
+143
-0
zh-cn/application-dev/security/permission-list.md
zh-cn/application-dev/security/permission-list.md
+10
-0
未找到文件。
zh-cn/application-dev/reference/apis/js-apis-uripermissionmanager.md
0 → 100644
浏览文件 @
2e2b6184
# @ohos.application.uriPermissionManager(URI权限管理)
> **说明:**
>
> 本模块首批接口从API version 10 开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
URI权限管理模块。用于应用A授权/撤销授权URI给应用B
## 导入模块
```
js
import
UriPermissionManager
from
'
@ohos.application.uriPermissionManager
'
;
```
## uriPermissionManager.grantUriPermission
grantUriPermission(uri: string, flag: wantConstant.Flags, accessTokenId: number, callback: AsyncCallback
<
number
>
): void
授权URI给指定应用,通过callback返回结果。
**系统能力**
:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| uri | string | 是 | 指向文件的URI,例如fileshare:///com.samples.filesharetest.FileShare/person/10。 |
| flag |
[
wantConstant.Flags
](
js-apis-ability-wantConstant.md#wantconstantflags
)
| 是 | URI的读权限或写权限。 |
| targetBundleName | string | 是 | 被授权URI的应用包名 |
| callback | AsyncCallback
<
number
>
| 是 | callback形式返回检验结果,返回0表示有权限,返回-1表示无权限。 |
**示例:**
```
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
,
WantConstant
.
Flags
.
FLAG_AUTH_READ_URI_PERMISSION
,
targetBundleName
,
(
result
)
=>
{
console
.
log
(
"
result.code =
"
+
result
.
code
)
})
```
## uriPermissionManager.grantUriPermission
grantUriPermission(uri: string, flag: wantConstant.Flags, accessTokenId: number): Promise
<
number
>
授权URI给指定应用,通过返回值返回结果。
**系统能力**
:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| uri | string | 是 | 指向文件的URI,例如fileshare:///com.samples.filesharetest.FileShare/person/10。 |
| flag |
[
wantConstant.Flags
](
js-apis-ability-wantConstant.md#wantconstantflags
)
| 是 | URI的读权限或写权限。 |
| targetBundleName | string | 是 | 被授权URI的应用包名 |
**返回值:**
| 类型 | 说明 |
| -------- | -------- |
| Promise
<
number
>
| 返回0表示有权限,返回-1表示无权限。 |
**示例:**
```
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
,
wantConstant
.
Flags
.
FLAG_AUTH_READ_URI_PERMISSION
,
targetBundleName
)
.
then
((
data
)
=>
{
console
.
log
(
'
Verification succeeded.
'
+
data
)
}).
catch
((
error
)
=>
{
console
.
log
(
'
Verification failed.
'
);
})
```
## uriPermissionManager.revokeUriPermission
revokeUriPermission(uri: string, accessTokenId: number, callback: AsyncCallback
<
number
>
): void
撤销授权指定应用的URI,通过callback返回结果。
**系统能力**
:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| uri | string | 是 | 指向文件的URI,例如fileshare:///com.samples.filesharetest.FileShare/person/10。 |
| targetBundleName | string | 是 | 被撤销授权uri的应用包名 |
| callback | AsyncCallback
<
number
>
| 是 | callback形式返回检验结果,返回0表示有权限,返回-1表示无权限。 |
**示例:**
```
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
)
=>
{
console
.
log
(
"
result.code =
"
+
result
.
code
)
})
```
## uriPermissionManager.revokeUriPermission
revokeUriPermission(uri: string, flag: wantConstant.Flags, accessTokenId: number): Promise
<
number
>
撤销授权指定应用的URI,通过返回值返回结果。
**系统能力**
:SystemCapability.Ability.AbilityRuntime.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------- | -------- | -------- |
| uri | string | 是 | 指向文件的URI,例如fileshare:///com.samples.filesharetest.FileShare/person/10。 |
| targetBundleName | string | 是 | 被授权URI的应用包名 |
**返回值:**
| 类型 | 说明 |
| -------- | -------- |
| Promise
<
number
>
| 返回0表示有权限,返回-1表示无权限。 |
**示例:**
```
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
)
.
then
((
data
)
=>
{
console
.
log
(
'
Verification succeeded.
'
+
data
)
}).
catch
((
error
)
=>
{
console
.
log
(
'
Verification failed.
'
);
})
```
zh-cn/application-dev/security/permission-list.md
浏览文件 @
2e2b6184
...
...
@@ -1757,3 +1757,13 @@
**授权方式**
:system_grant
**ACL使能**
:FALSE
## ohos.permission.PROXY_AUTHORIZATION_URI
允许应用代理授权URI。
**权限级别**
:system_basic
**授权方式**
:system_grant
**ACL使能**
:FALSE
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录