Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Docs
提交
7674d8b5
D
Docs
项目概览
OpenHarmony
/
Docs
大约 2 年 前同步成功
通知
161
Star
293
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看板
You need to sign in or sign up before continuing.
未验证
提交
7674d8b5
编写于
5月 29, 2023
作者:
O
openharmony_ci
提交者:
Gitee
5月 29, 2023
浏览文件
操作
浏览文件
下载
差异文件
!18862 add ufm Album API10 for 4.0-Beta1
Merge pull request !18862 from 胡伟奇/cherry-pick-1685353191
上级
31bebbfe
fb7edf63
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
1560 addition
and
470 deletion
+1560
-470
zh-cn/application-dev/reference/apis/js-apis-userFileManager.md
...application-dev/reference/apis/js-apis-userFileManager.md
+1560
-470
未找到文件。
zh-cn/application-dev/reference/apis/js-apis-userFileManager.md
浏览文件 @
7674d8b5
...
...
@@ -19,7 +19,7 @@ getUserFileMgr(context: Context): UserFileManager
获取用户数据管理模块的实例,用于访问和修改用户等用户公共媒体数据信息(如音频、视频、图片、文档等)。
**模型约束
:**
此接口仅可在Stage模型下使用。
**模型约束
**
:
此接口仅可在Stage模型下使用。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
...
...
@@ -27,13 +27,13 @@ getUserFileMgr(context: Context): UserFileManager
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ------- | ---- | -------------------------- |
| context |
[
Context
](
js-apis-inner-app-context.md
)
| 是 | 传入Ability实例的Context |
| context |
[
Context
](
js-apis-inner-app-context.md
)
| 是 | 传入Ability实例的Context
。
|
**返回值:**
| 类型 | 说明 |
| ----------------------------- | :---- |
|
[
UserFileManager
](
#userfilemanager
)
| 媒体库实例 |
|
[
UserFileManager
](
#userfilemanager
)
| 媒体库实例
。
|
**示例:**
...
...
@@ -59,8 +59,8 @@ getPhotoAssets(options: FetchOptions, callback: AsyncCallback<FetchResult<
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 图片和视频检索选项 |
| callback | AsyncCallback
<
[FetchResult](#fetchresult)
<
[FileAsset](#fileasset)
>>
| 是 | callback
返回图片和视频检索结果集
|
| options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 图片和视频检索选项
。
|
| callback | AsyncCallback
<
[FetchResult](#fetchresult)
<
[FileAsset](#fileasset)
>>
| 是 | callback
返回图片和视频检索结果集。
|
**示例:**
...
...
@@ -80,7 +80,7 @@ async function example() {
console
.
info
(
'
fetchResult success
'
);
let
fileAsset
=
await
fetchResult
.
getFirstObject
();
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
"
fileAsset.displayName :
"
+
fileAsset
.
displayName
);
console
.
info
(
'
fileAsset.displayName :
'
+
fileAsset
.
displayName
);
}
}
else
{
console
.
error
(
'
fetchResult fail
'
+
err
);
...
...
@@ -103,13 +103,13 @@ getPhotoAssets(options: FetchOptions): Promise<FetchResult<FileAsset>&g
| 参数名 | 类型 | 必填 | 说明 |
| ------- | ------------------- | ---- | ---------------- |
| options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 图片和视频检索选项 |
| options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 图片和视频检索选项
。
|
**返回值:**
| 类型 | 说明 |
| --------------------------- | -------------- |
| Promise
<
[FetchResult](#fetchresult)
<
[FileAsset](#fileasset)
>>
|
图片和视频数据结果集
|
| Promise
<
[FetchResult](#fetchresult)
<
[FileAsset](#fileasset)
>>
|
Promise对象,返回图片和视频数据结果集。
|
**示例:**
...
...
@@ -129,7 +129,7 @@ async function example() {
console
.
info
(
'
fetchResult success
'
);
let
fileAsset
=
await
fetchResult
.
getFirstObject
();
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
"
fileAsset.displayName :
"
+
fileAsset
.
displayName
);
console
.
info
(
'
fileAsset.displayName :
'
+
fileAsset
.
displayName
);
}
}
}
catch
(
err
)
{
...
...
@@ -137,12 +137,11 @@ async function example() {
}
}
```
### createPhotoAsset
createPhotoAsset(displayName: string, albumUri: string, callback: AsyncCallback
<
FileAsset
>
): void;
创建图片或视频资源,使用callback方式返回结果。
指定待创建的图片或者视频的文件名和所在相册的uri,
创建图片或视频资源,使用callback方式返回结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
...
...
@@ -152,9 +151,9 @@ createPhotoAsset(displayName: string, albumUri: string, callback: AsyncCallback&
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| displayName | string | 是 | 创建的图片或者视频文件名 |
| albumUri | string | 是 | 创建的图片或者视频所在相册的uri |
| callback | AsyncCallback
<
[FileAsset](#fileasset)
>
| 是 | callback
返回创建的图片和视频结果
|
| displayName | string | 是 | 创建的图片或者视频文件名
。
|
| albumUri | string | 是 | 创建的图片或者视频所在相册的uri
。
|
| callback | AsyncCallback
<
[FileAsset](#fileasset)
>
| 是 | callback
返回创建的图片和视频结果。
|
**示例:**
...
...
@@ -169,7 +168,7 @@ async function example() {
};
let
albums
=
await
mgr
.
getPhotoAlbums
(
fetchOptions
);
let
album
=
await
albums
.
getFirstObject
();
let
testFileName
=
"
testFile
"
+
Date
.
now
()
+
"
.jpg
"
;
let
testFileName
=
'
testFile
'
+
Date
.
now
()
+
'
.jpg
'
;
mgr
.
createPhotoAsset
(
testFileName
,
album
.
albumUri
,
(
err
,
fileAsset
)
=>
{
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
'
createPhotoAsset file displayName
'
+
fileAsset
.
displayName
);
...
...
@@ -185,7 +184,7 @@ async function example() {
createPhotoAsset(displayName: string, callback: AsyncCallback
<
FileAsset
>
): void;
创建图片或视频资源,使用callback方式返回结果。
指定待创建的图片或者视频的文件名,
创建图片或视频资源,使用callback方式返回结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
...
...
@@ -195,15 +194,15 @@ createPhotoAsset(displayName: string, callback: AsyncCallback<FileAsset>):
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| displayName | string | 是 | 创建的图片或者视频文件名 |
| callback | AsyncCallback
<
[FileAsset](#fileasset)
>
| 是 | callback
返回创建的图片和视频结果
|
| displayName | string | 是 | 创建的图片或者视频文件名
。
|
| callback | AsyncCallback
<
[FileAsset](#fileasset)
>
| 是 | callback
返回创建的图片和视频结果。
|
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
createPhotoAssetDemo
'
);
let
testFileName
=
"
testFile
"
+
Date
.
now
()
+
"
.jpg
"
;
let
testFileName
=
'
testFile
'
+
Date
.
now
()
+
'
.jpg
'
;
mgr
.
createPhotoAsset
(
testFileName
,
(
err
,
fileAsset
)
=>
{
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
'
createPhotoAsset file displayName
'
+
fileAsset
.
displayName
);
...
...
@@ -219,7 +218,7 @@ async function example() {
createPhotoAsset(displayName: string, albumUri?: string): Promise
<
FileAsset
>
;
创建图片或视频资源,使用Promise方式返回结果。
指定待创建的图片或者视频的文件名和所在相册的uri,
创建图片或视频资源,使用Promise方式返回结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
...
...
@@ -229,14 +228,14 @@ createPhotoAsset(displayName: string, albumUri?: string): Promise<FileAsset&g
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| displayName | string | 是 | 创建的图片或者视频文件名 |
| albumUri | string | 否 | 创建的图片或者视频所在相册的uri |
| displayName | string | 是 | 创建的图片或者视频文件名
。
|
| albumUri | string | 否 | 创建的图片或者视频所在相册的uri
。
|
**返回值:**
| 类型 | 说明 |
| --------------------------- | -------------- |
| Promise
<
[FileAsset](#fileasset)
>
|
返回创建的图片和视频结果
|
| Promise
<
[FileAsset](#fileasset)
>
|
Promise对象,返回创建的图片和视频结果。
|
**示例:**
...
...
@@ -244,7 +243,7 @@ createPhotoAsset(displayName: string, albumUri?: string): Promise<FileAsset&g
async
function
example
()
{
console
.
info
(
'
createPhotoAssetDemo
'
);
try
{
let
testFileName
=
"
testFile
"
+
Date
.
now
()
+
"
.jpg
"
;
let
testFileName
=
'
testFile
'
+
Date
.
now
()
+
'
.jpg
'
;
let
fileAsset
=
await
mgr
.
createPhotoAsset
(
testFileName
);
console
.
info
(
'
createPhotoAsset file displayName
'
+
fileAsset
.
displayName
);
console
.
info
(
'
createPhotoAsset successfully
'
);
...
...
@@ -254,10 +253,163 @@ async function example() {
}
```
### createPhotoAsset
createPhotoAsset(displayName: string, createOption: PhotoCreateOptions, callback: AsyncCallback
<
FileAsset
>
): void;
指定待创建的图片或者视频的文件名和创建选项,创建图片或视频资源,使用callback方式返回结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| displayName | string | 是 | 创建的图片或者视频文件名。 |
| createOption |
[
PhotoCreateOptions
](
#photocreateoptions10
)
| 是 | 图片或视频的创建选项。 |
| callback | AsyncCallback
<
[FileAsset](#fileasset)
>
| 是 | callback返回创建的图片和视频结果。 |
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
createPhotoAssetDemo
'
);
let
testFileName
=
'
testFile
'
+
Date
.
now
()
+
'
.jpg
'
;
let
createOption
=
{
subType
:
userFileManager
.
PhotoSubType
.
DEFAULT
}
mgr
.
createPhotoAsset
(
testFileName
,
createOption
,
(
err
,
fileAsset
)
=>
{
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
'
createPhotoAsset file displayName
'
+
fileAsset
.
displayName
);
console
.
info
(
'
createPhotoAsset successfully
'
);
}
else
{
console
.
error
(
'
createPhotoAsset failed, message =
'
,
err
);
}
});
}
```
### createPhotoAsset
createPhotoAsset(displayName: string, createOption: PhotoCreateOptions): Promise
<
FileAsset
>
;
指定待创建的图片或者视频的文件名和创建选项,创建图片或视频资源,使用Promise方式返回结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| displayName | string | 是 | 创建的图片或者视频文件名。 |
| createOption |
[
PhotoCreateOptions
](
#photocreateoptions10
)
| 是 | 图片或视频的创建选项。 |
**返回值:**
| 类型 | 说明 |
| --------------------------- | -------------- |
| Promise
<
[FileAsset](#fileasset)
>
| Promise对象,返回创建的图片和视频结果。 |
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
createPhotoAssetDemo
'
);
try
{
let
testFileName
=
'
testFile
'
+
Date
.
now
()
+
'
.jpg
'
;
let
createOption
=
{
subType
:
userFileManager
.
PhotoSubType
.
DEFAULT
}
let
fileAsset
=
await
mgr
.
createPhotoAsset
(
testFileName
,
createOption
);
console
.
info
(
'
createPhotoAsset file displayName
'
+
fileAsset
.
displayName
);
console
.
info
(
'
createPhotoAsset successfully
'
);
}
catch
(
err
)
{
console
.
error
(
'
createPhotoAsset failed, message =
'
,
err
);
}
}
```
### createAudioAsset<sup>10+</sup>
createAudioAsset(displayName: string, callback: AsyncCallback
<
FileAsset
>
): void;
创建音频文件资源,使用callback方式返回结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| displayName | string | 是 | 创建的音频文件名。 |
| callback | AsyncCallback
<
[FileAsset](#fileasset)
>
| 是 | callback返回创建的音频资源结果。 |
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
createAudioAssetDemo
'
);
let
testFileName
=
'
testFile
'
+
Date
.
now
()
+
'
.mp3
'
;
mgr
.
createAudioAsset
(
testFileName
,
(
err
,
fileAsset
)
=>
{
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
'
createAudioAsset file displayName
'
+
fileAsset
.
displayName
);
console
.
info
(
'
createAudioAsset successfully
'
);
}
else
{
console
.
error
(
'
createAudioAsset failed, message =
'
,
err
);
}
});
}
```
### createAudioAsset<sup>10+</sup>
createAudioAsset(displayName: string): Promise
<
FileAsset
>
;
创建音频文件资源,使用Promise方式返回结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| displayName | string | 是 | 创建的音频文件名。 |
**返回值:**
| 类型 | 说明 |
| --------------------------- | -------------- |
| Promise
<
[FileAsset](#fileasset)
>
| Promise对象,返回创建的音频资源结果。 |
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
createAudioAssetDemo
'
);
try
{
let
testFileName
=
'
testFile
'
+
Date
.
now
()
+
'
.mp3
'
;
let
fileAsset
=
await
mgr
.
createAudioAsset
(
testFileName
);
console
.
info
(
'
createAudioAsset file displayName
'
+
fileAsset
.
displayName
);
console
.
info
(
'
createAudioAsset successfully
'
);
}
catch
(
err
)
{
console
.
error
(
'
createAudioAsset failed, message =
'
,
err
);
}
}
```
### getPhotoAlbums
getPhotoAlbums(options: AlbumFetchOptions, callback: AsyncCallback
<
FetchResult
<
Album
>>
): void;
获取相册,使用callback方式返回结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
...
...
@@ -268,8 +420,8 @@ getPhotoAlbums(options: AlbumFetchOptions, callback: AsyncCallback<FetchResul
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| options |
[
AlbumFetchOptions
](
#albumfetchoptions
)
| 是 | 相册检索选项 |
| callback | AsyncCallback
<
[FetchResult](#fetchresult)
<
[Album](#album)
>>
| 是 | callback
返回相册检索结果
|
| options |
[
AlbumFetchOptions
](
#albumfetchoptions
)
| 是 | 相册检索选项
。
|
| callback | AsyncCallback
<
[FetchResult](#fetchresult)
<
[Album](#album)
>>
| 是 | callback
返回相册检索结果。
|
**示例:**
...
...
@@ -314,13 +466,13 @@ getPhotoAlbums(options: AlbumFetchOptions): Promise<FetchResult<Album>&
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| options |
[
AlbumFetchOptions
](
#albumfetchoptions
)
| 是 | 相册检索选项 |
| options |
[
AlbumFetchOptions
](
#albumfetchoptions
)
| 是 | 相册检索选项
。
|
**返回值:**
| 类型 | 说明 |
| --------------------------- | -------------- |
| Promise
<
[FetchResult](#fetchresult)
<
[Album](#album)
>>
| Promise
返回相册检索结果
|
| Promise
<
[FetchResult](#fetchresult)
<
[Album](#album)
>>
| Promise
对象,返回相册检索结果。
|
**示例:**
...
...
@@ -344,545 +496,860 @@ async function example() {
}
```
###
getPrivateAlbum
###
createAlbum<sup>10+</sup>
getPrivateAlbum(type: PrivateAlbumType, callback: AsyncCallback
<
FetchResult
<
PrivateAlbum
>
>
): void;
createAlbum(name: string, callback: AsyncCallback
<
Album
>
): void;
获取系统相册,使用 callback 方式返回系统相册的数组。
创建相册,使用callback方式返回结果。
待创建的相册名参数规格为:
-
相册名字符串长度为1~255。
-
不允许出现的非法英文字符,包括:
<br>
. ..
\
/ :
*
? " '
` < > | { } [ ]
- 英文字符大小写不敏感。
- 相册名不允许重名。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**
:ohos.permission.
READ
_IMAGEVIDEO
**需要权限**:ohos.permission.
WRITE
_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
|
type |
[
PrivateAlbumType
](
#privatealbumtype
)
| 是 | 系统相册类型
|
| callback | AsyncCallback
<
[
FetchResult](#fetchresult)
<
[PrivateAlbum](#privatealbum)
>>
| 是 | callback 返回相册检索结果
|
|
name | string | 是 | 待创建相册的相册名。
|
| callback | AsyncCallback<[
Album](#album)> | 是 | callback返回创建的相册实例。
|
**示例:**
```ts
async function example() {
console
.
info
(
'
getPrivateAlbumDemo
'
);
mgr
.
getPrivateAlbum
(
userFileManager
.
PrivateAlbumType
.
TYPE_TRASH
,
async
(
err
,
fetchResult
)
=>
{
if
(
fetchResult
!=
undefined
)
{
let
trashAlbum
=
await
fetchResult
.
getFirstObject
();
console
.
info
(
'
first album.albumName =
'
+
trashAlbum
.
albumName
);
}
else
{
console
.
error
(
'
getPrivateAlbum failed. message =
'
,
err
);
console.info('createAlbumDemo');
let albumName = 'newAlbumName' + new Date().getTime();
mgr.createAlbum(albumName, (err, album) => {
if (err) {
console.error('createAlbumCallback failed with err: ' + err);
return;
}
console.info('createAlbumCallback successfully, album: ' + album.albumName + ' album uri: ' + album.albumUri);
});
}
```
###
getPrivateAlbum
###
createAlbum<sup>10+</sup>
getPrivateAlbum(type: PrivateAlbumType): Promise
<
FetchResult
<
PrivateAlbum
>
>
;
createAlbum(name: string): Promise<Album
>;
创建相册,使用Promise方式返回结果。
获取系统相册,使用Promise方式返回结果。
待创建的相册名参数规格为:
- 相册名字符串长度为1~255。
- 不允许出现的非法英文字符,包括:<br> . .. \ / : * ? " ' `
<
>
| { } [ ]
-
英文字符大小写不敏感。
-
相册名不允许重名。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**
:ohos.permission.
READ
_IMAGEVIDEO
**需要权限**
:ohos.permission.
WRITE
_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
|
type |
[
PrivateAlbumType
](
#privatealbumtype
)
| 是 | 系统相册类型
|
|
name | string | 是 | 待创建相册的相册名。
|
**返回值:**
| 类型 | 说明 |
| --------------------------- | -------------- |
| Promise
<
[
FetchResult](#fetchresult)
<
[PrivateAlbum](#privatealbum)
>>
| Promise 返回相册检索结果
|
| Promise
<
[
Album](#album)
>
| Promise对象,返回创建的相册实例。
|
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
getPrivateAlbumDemo
'
);
try
{
let
fetchResult
=
await
mgr
.
getPrivateAlbum
(
userFileManager
.
PrivateAlbumType
.
TYPE_TRASH
);
let
trashAlbum
=
await
fetchResult
.
getFirstObject
();
console
.
info
(
'
first album.albumName =
'
+
trashAlbum
.
albumName
);
}
catch
(
err
)
{
console
.
error
(
'
getPrivateAlbum failed. message =
'
,
err
);
}
console
.
info
(
'
createAlbumDemo
'
);
let
albumName
=
'
newAlbumName
'
+
new
Date
().
getTime
();
mgr
.
createAlbum
(
albumName
).
then
((
album
)
=>
{
console
.
info
(
'
createAlbumPromise successfully, album:
'
+
album
.
albumName
+
'
album uri:
'
+
album
.
albumUri
);
}).
catch
((
err
)
=>
{
console
.
error
(
'
createAlbumPromise failed with err:
'
+
err
);
});
}
```
###
getAudioAssets
###
deleteAlbums<sup>10+</sup>
getAudioAssets(options: FetchOptions, callback: AsyncCallback
<
FetchResult
<
FileAsset
>
>
): void;
deleteAlbums(albums: Array
<
Album
>
, callback: AsyncCallback
<
void
>
): void;
获取音频文件,使用callback方式返回结果。
删除相册,使用callback方式返回结果。
删除相册前需先确保相册存在,只能删除用户相册。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**
:ohos.permission.
READ_AUDI
O
**需要权限**
:ohos.permission.
WRITE_IMAGEVIDE
O
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
|
options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 检索选项
|
| callback | AsyncCallback
<
[FetchResult](#fetchresult)
<
[FileAsset](#fileasset)
>>
| 是 | callback 返回音频检索结果
|
|
albums | Array
<
[Album](#album)
>
| 是 | 待删除相册的数组。
|
| callback | AsyncCallback
<
void
>
| 是 | callback返回void。
|
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getAudioAssets
'
);
// 示例代码为删除名称包含newAlbumName的第一个相册。
console
.
info
(
'
deleteAlbumsDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
predicates
.
like
(
'
album_name
'
,
'
%newAlbumName%
'
);
let
fetchOptions
=
{
fetchColumns
:
[],
predicates
:
predicates
};
mgr
.
getAudioAssets
(
fetchOptions
,
async
(
err
,
fetchResult
)
=>
{
if
(
fetchResult
!=
undefined
)
{
console
.
info
(
'
fetchFileResult success
'
);
let
fileAsset
=
await
fetchResult
.
getFirstObject
();
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
"
fileAsset.displayName :
"
+
fileAsset
.
displayName
);
}
}
else
{
console
.
error
(
'
fetchFileResult fail
'
+
err
);
let
fetchResult
=
await
mgr
.
getAlbums
(
userFileManager
.
AlbumType
.
USER
,
userFileManager
.
AlbumSubType
.
USER_GENERIC
,
fetchOptions
);
let
album
=
await
fetchResult
.
getFirstObject
();
mgr
.
deleteAlbums
([
album
],
(
err
)
=>
{
if
(
err
)
{
console
.
error
(
'
deletePhotoAlbumsCallback failed with err:
'
+
err
);
return
;
}
console
.
info
(
'
deletePhotoAlbumsCallback successfully
'
);
});
fetchResult
.
close
();
}
```
###
getAudioAssets
###
deleteAlbums<sup>10+</sup>
getAudioAssets(options: FetchOptions): Promise
<
FetchResult
<
FileAsset
>
>
;
deleteAlbums(albums: Array
<
Album
>
): Promise
<
void
>
;
获取音频文件,使用callback方式返回结果。
删除相册,使用Promise方式返回结果。
删除相册前需先确保相册存在,只能删除用户相册。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**
:ohos.permission.
READ_AUDI
O
**需要权限**
:ohos.permission.
WRITE_IMAGEVIDE
O
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
|
options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 检索选项
|
|
albums | Array
<
[Album](#album)
>
| 是 | 待删除相册的数组。
|
**返回值:**
| 类型 | 说明 |
| --------------------------- | -------------- |
| Promise
<
[FetchResult](#fetchresult)
<
[FileAsset](#fileasset)
>>
| Promise 返回音频检索结果
|
| Promise
<
void
>
| Promise对象,返回void。
|
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getAudioAssets
'
);
// 示例代码为删除名称包含newAlbumName的第一个相册。
console
.
info
(
'
deleteAlbumsDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
predicates
.
like
(
'
album_name
'
,
'
%newAlbumName%
'
);
let
fetchOptions
=
{
fetchColumns
:
[],
predicates
:
predicates
};
try
{
var
fetchResult
=
await
mgr
.
getAudioAssets
(
fetchOptions
);
}
catch
(
err
)
{
console
.
error
(
'
getAudioAssets failed, message =
'
,
err
);
}
if
(
fetchResult
!=
undefined
)
{
console
.
info
(
'
fetchFileResult success
'
);
let
fileAsset
=
await
fetchResult
.
getFirstObject
();
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
"
fileAsset.displayName :
"
+
fileAsset
.
displayName
);
}
}
let
fetchResult
=
await
mgr
.
getAlbums
(
userFileManager
.
AlbumType
.
USER
,
userFileManager
.
AlbumSubType
.
USER_GENERIC
,
fetchOptions
);
let
album
=
await
fetchResult
.
getFirstObject
();
mgr
.
deleteAlbums
([
album
]).
then
(()
=>
{
console
.
info
(
'
deletePhotoAlbumsPromise successfully
'
);
}).
catch
((
err
)
=>
{
console
.
error
(
'
deletePhotoAlbumsPromise failed with err:
'
+
err
);
});
fetchResult
.
close
();
}
```
###
delete
###
getAlbums<sup>10+</sup>
delete(uri: string, callback: AsyncCallback
<
void
>
): void;
getAlbums(type: AlbumType, subType: AlbumSubType, options: FetchOptions, callback: AsyncCallback
<
FetchResult
<
Album
>
>
): void;
删除媒体文件,删除的文件进入到回收站
。
根据检索选项和相册类型获取相册,使用callback方式返回结果
。
**需要权限**
:ohos.permission.READ_IMAGEVIDEO 和 ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.READ_AUDIO 和 ohos.permission.WRITE_AUDIO
获取相册前需先保证相册存在。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数**
:
**需要权限**
:ohos.permission.READ_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| uri | string | 是 | 媒体文件uri |
| callback | AsyncCallback
<
void
>
| 是 | 回调返回空 |
| -------- | ------------------------ | ---- | ------------------------- |
| type |
[
AlbumType
](
#albumtype10
)
| 是 | 相册类型。 |
| subType |
[
AlbumSubType
](
#albumsubtype10
)
| 是 | 相册子类型。 |
| options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 检索选项。 |
| callback | AsyncCallback
<
[FetchResult](#fetchresult)
<
[Album](#album)
>>
| 是 | callback返回获取相册的结果集。 |
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
deleteAssetDemo
'
);
// 示例代码中为获取相册名中包含newAlbumName的第一个相册。
console
.
info
(
'
getAlbumsDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
predicates
.
like
(
'
album_name
'
,
'
%newAlbumName%
'
);
let
fetchOptions
=
{
fetchColumns
:
[],
predicates
:
predicates
};
try
{
const
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOptions
);
var
asset
=
await
fetchResult
.
getFirstObject
();
}
catch
(
err
)
{
console
.
info
(
'
fetch failed, message =
'
,
err
);
}
if
(
asset
==
undefined
)
{
console
.
error
(
'
asset not exist
'
);
mgr
.
getAlbums
(
userFileManager
.
AlbumType
.
USER
,
userFileManager
.
AlbumSubType
.
USER_GENERIC
,
fetchOptions
,
async
(
err
,
fetchResult
)
=>
{
if
(
err
)
{
console
.
error
(
'
getAlbumsCallback failed with err:
'
+
err
);
return
;
}
mgr
.
delete
(
asset
.
uri
,
(
err
)
=>
{
if
(
err
==
undefined
)
{
console
.
info
(
"
delete successfully
"
);
}
else
{
console
.
error
(
"
delete failed with error:
"
+
err
);
if
(
fetchResult
==
undefined
)
{
console
.
error
(
'
getAlbumsCallback fetchResult is undefined
'
);
return
;
}
let
album
=
await
fetchResult
.
getFirstObject
();
console
.
info
(
'
getAlbumsCallback successfully, albumName:
'
+
album
.
albumName
);
fetchResult
.
close
();
});
}
```
###
delete
###
getAlbums<sup>10+</sup>
delete(uri: string): Promise
<
void
>
;
getAlbums(type: AlbumType, subType: AlbumSubType, callback: AsyncCallback
<
FetchResult
<
Album
>>
): void
;
删除媒体文件,删除的文件进入到回收站
。
根据相册类型获取相册,使用callback方式返回结果
。
**需要权限**
:ohos.permission.READ_IMAGEVIDEO 和 ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.READ_AUDIO 和 ohos.permission.WRITE_AUDIO
获取相册前需先保证相册存在。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数**
:
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| uri | string | 是 | 媒体文件uri |
**需要权限**
:ohos.permission.READ_IMAGEVIDEO
**
返回值
:**
**
参数
:**
| 类型 | 说明 |
| --------------------------------------- | ----------------- |
| Promise
<
void
>
| 回调返回空 |
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| type |
[
AlbumType
](
#albumtype10
)
| 是 | 相册类型。 |
| subType |
[
AlbumSubType
](
#albumsubtype10
)
| 是 | 相册子类型。 |
| callback | AsyncCallback
<
[FetchResult](#fetchresult)
<
[Album](#album)
>>
| 是 | callback返回获取相册的结果集。 |
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
deleteDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOptions
=
{
fetchColumns
:
[],
predicates
:
predicates
};
try
{
const
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOptions
);
var
asset
=
await
fetchResult
.
getFirstObject
();
}
catch
(
err
)
{
console
.
info
(
'
fetch failed, message =
'
,
err
);
}
if
(
asset
==
undefined
)
{
console
.
error
(
'
asset not exist
'
);
// 示例代码中为获取统相册VIDEO,默认已预置。
console
.
info
(
'
getAlbumsDemo
'
);
mgr
.
getAlbums
(
userFileManager
.
AlbumType
.
SYSTEM
,
userFileManager
.
AlbumSubType
.
VIDEO
,
async
(
err
,
fetchResult
)
=>
{
if
(
err
)
{
console
.
error
(
'
getAlbumsCallback failed with err:
'
+
err
);
return
;
}
try
{
await
mgr
.
delete
(
asset
.
uri
);
console
.
info
(
"
delete successfully
"
);
}
catch
(
err
)
{
console
.
error
(
"
delete failed with error:
"
+
err
);
if
(
fetchResult
==
undefined
)
{
console
.
error
(
'
getAlbumsCallback fetchResult is undefined
'
);
return
;
}
let
album
=
await
fetchResult
.
getFirstObject
();
console
.
info
(
'
getAlbumsCallback successfully, albumUri:
'
+
album
.
albumUri
);
fetchResult
.
close
();
});
}
```
###
on
###
getAlbums<sup>10+</sup>
on(type: ChangeEvent, callback: Callback
<
void
>
): void
getAlbums(type: AlbumType, subType: AlbumSubType, options?: FetchOptions): Promise
<
FetchResult
<
Album
>>
;
打开文件管理库变更通知,使用callback方式返回异步结果。
根据检索选项和相册类型获取相册,使用Promise方式返回结果。
获取相册前需先保证相册存在。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**
:ohos.permission.READ_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------------------- | ---- | ------------------------------------------------------------ |
| type |
[
ChangeEvent
](
#changeevent
)
| 是 | 媒体类型
<br/>
'deviceChange':
注册设备变更
<br/>
'albumChange':
相册变更
<br/>
'imageChange':
图片文件变更
<br/>
'audioChange':
音频文件变更
<br/>
'videoChange':
视频文件变更
<br/>
'remoteFileChange':
注册设备上文件变更 |
| callback | Callback
<
void
>
| 是 | 回调返回空 |
| -------- | ------------------------ | ---- | ------------------------- |
| type |
[
AlbumType
](
#albumtype10
)
| 是 | 相册类型。 |
| subType |
[
AlbumSubType
](
#albumsubtype10
)
| 是 | 相册子类型。 |
| options |
[
FetchOptions
](
#fetchoptions
)
| 否 | 检索选项,不填时默认根据相册类型检索。 |
**返回值:**
| 类型 | 说明 |
| --------------------------- | -------------- |
| Promise
<
[FetchResult](#fetchresult)
<
[Album](#album)
>>
| Promise对象,返回获取相册的结果集。 |
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
onDemo
'
);
let
count
=
0
;
mgr
.
on
(
'
imageChange
'
,
()
=>
{
count
++
;
// image file had changed, do something
});
try
{
let
testFileName
=
"
testFile
"
+
Date
.
now
()
+
"
.jpg
"
;
let
fileAsset
=
await
mgr
.
createPhotoAsset
(
testFileName
);
console
.
info
(
'
createPhotoAsset file displayName
'
+
fileAsset
.
displayName
);
console
.
info
(
'
createPhotoAsset successfully
'
);
}
catch
(
err
)
{
console
.
error
(
'
createPhotoAsset failed, message =
'
+
err
);
}
//sleep 1s
if
(
count
>
0
)
{
console
.
info
(
"
onDemo success
"
);
}
else
{
console
.
error
(
"
onDemo fail
"
);
// 示例代码中为获取相册名中包含newAlbumName的第一个相册。
console
.
info
(
'
getAlbumsDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
predicates
.
like
(
'
album_name
'
,
'
%newAlbumName%
'
);
let
fetchOptions
=
{
fetchColumns
:
[],
predicates
:
predicates
};
mgr
.
getAlbums
(
userFileManager
.
AlbumType
.
USER
,
userFileManager
.
AlbumSubType
.
USER_GENERIC
,
fetchOptions
).
then
(
async
(
fetchResult
)
=>
{
if
(
fetchResult
==
undefined
)
{
console
.
error
(
'
getAlbumsPromise fetchResult is undefined
'
);
return
;
}
mgr
.
off
(
'
imageChange
'
,
()
=>
{
// stop listening success
let
album
=
await
fetchResult
.
getFirstObject
();
console
.
info
(
'
getAlbumsPromise successfully, albumName:
'
+
album
.
albumName
);
fetchResult
.
close
();
}).
catch
((
err
)
=>
{
console
.
error
(
'
getAlbumsPromise failed with err:
'
+
err
);
});
}
```
###
off
###
getPrivateAlbum
off(type: ChangeEvent, callback?: Callback
<
void
>
): void
getPrivateAlbum(type: PrivateAlbumType, callback: AsyncCallback
<
FetchResult
<
PrivateAlbum
>>
): void;
关闭文件管理库变更通知,使用callback方式返回异步结果
。
获取系统相册,使用 callback 方式返回系统相册的数组
。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**
:ohos.permission.READ_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | --------------------
| ---- | -----------------------------------
------------------------- |
| type
|
[
ChangeEvent
](
#changeevent
)
| 是 | 媒体类型
<br/>
'deviceChange':
注册设备变更
<br/>
'albumChange':
相册变更
<br/>
'imageChange':
图片文件变更
<br/>
'audioChange':
音频文件变更
<br/>
'videoChange':
视频文件变更
<br/>
'remoteFileChange':
注册设备上文件变更
|
| callback |
Callback
<
void
>
| 否 | 回调返回空
|
| -------- | --------------------
---- | ---- |
------------------------- |
| type
|
[
PrivateAlbumType
](
#privatealbumtype
)
| 是 | 系统相册类型。
|
| callback |
AsyncCallback
<
[FetchResult](#fetchresult)
<
[PrivateAlbum](#privatealbum)
>>
| 是 | callback返回相册检索结果。
|
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
offDemo
'
);
let
count
=
0
;
mgr
.
on
(
'
imageChange
'
,
()
=>
{
count
++
;
// image file had changed, do something
});
mgr
.
off
(
'
imageChange
'
,
()
=>
{
// stop listening success
});
try
{
let
testFileName
=
"
testFile
"
+
Date
.
now
()
+
"
.jpg
"
;
let
fileAsset
=
await
mgr
.
createPhotoAsset
(
testFileName
);
console
.
info
(
'
createPhotoAsset file displayName
'
+
fileAsset
.
displayName
);
console
.
info
(
'
createPhotoAsset successfully
'
);
}
catch
(
err
)
{
console
.
error
(
'
createPhotoAsset failed, message =
'
+
err
);
}
//sleep 1s
if
(
count
==
0
)
{
console
.
info
(
"
offDemo success
"
);
console
.
info
(
'
getPrivateAlbumDemo
'
);
mgr
.
getPrivateAlbum
(
userFileManager
.
PrivateAlbumType
.
TYPE_TRASH
,
async
(
err
,
fetchResult
)
=>
{
if
(
fetchResult
!=
undefined
)
{
let
trashAlbum
=
await
fetchResult
.
getFirstObject
();
console
.
info
(
'
first album.albumName =
'
+
trashAlbum
.
albumName
);
}
else
{
console
.
error
(
"
offDemo fail
"
);
console
.
error
(
'
getPrivateAlbum failed. message =
'
,
err
);
}
});
}
```
### get
ActivePeers
### get
PrivateAlbum
get
ActivePeers(callback: AsyncCallback
<
Array
<
PeerInfo
>>
): void
;
get
PrivateAlbum(type: PrivateAlbumType): Promise
<
FetchResult
<
PrivateAlbum
>>
;
获取
在线对端设备的信息,使用callback方式返回异步
结果。
获取
系统相册,使用Promise方式返回
结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.DistributedCore
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**
:ohos.permission.READ_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | --------------------------------- | ---- | ------------ |
| callback | AsyncCallback
<
Array
<
[PeerInfo](#peerinfo)
>>
| 是 | 返回在线设备列表 |
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
getActivePeersDemo
'
);
mgr
.
getActivePeers
((
err
,
devicesInfo
)
=>
{
if
(
devicesInfo
!=
undefined
)
{
console
.
log
(
'
getActivePeers succeed.
'
);
for
(
let
i
=
0
;
i
<
devicesInfo
.
length
;
i
++
)
{
console
.
info
(
'
get distributed info
'
+
devicesInfo
[
i
].
deviceName
+
devicesInfo
[
i
].
networkId
);
}
}
else
{
console
.
error
(
'
getActivePeers failed. message =
'
,
err
);
}
});
}
```
### getActivePeers
getActivePeers(): Promise
<
Array
<
PeerInfo
>>
;
获取在线对端设备的信息,使用promise方式返回异步结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.DistributedCore
| -------- | ------------------------ | ---- | ------------------------- |
| type |
[
PrivateAlbumType
](
#privatealbumtype
)
| 是 | 系统相册类型。 |
**返回值:**
| 类型 | 说明 |
| --------------------------- | --------------
---------------
|
| Promise
<
Array
<
[PeerInfo](#peerinfo)
>>
| Promise实例,返回在线设备列表
|
| --------------------------- | -------------- |
| Promise
<
[FetchResult](#fetchresult)
<
[PrivateAlbum](#privatealbum)
>>
| Promise对象,返回相册检索结果。
|
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
get
ActivePeers
Demo
'
);
console
.
info
(
'
get
PrivateAlbum
Demo
'
);
try
{
var
devicesInfo
=
await
mgr
.
getActivePeers
();
let
fetchResult
=
await
mgr
.
getPrivateAlbum
(
userFileManager
.
PrivateAlbumType
.
TYPE_TRASH
);
let
trashAlbum
=
await
fetchResult
.
getFirstObject
();
console
.
info
(
'
first album.albumName =
'
+
trashAlbum
.
albumName
);
}
catch
(
err
)
{
console
.
error
(
'
getActivePeers failed. message =
'
,
err
);
}
if
(
devicesInfo
!=
undefined
)
{
console
.
log
(
'
getActivePeers succeed.
'
);
for
(
let
i
=
0
;
i
<
devicesInfo
.
length
;
i
++
)
{
console
.
info
(
'
get distributed info
'
+
devicesInfo
[
i
].
deviceName
+
devicesInfo
[
i
].
networkId
);
}
}
else
{
console
.
error
(
'
get distributed fail
'
);
console
.
error
(
'
getPrivateAlbum failed. message =
'
,
err
);
}
}
```
### getA
llPeer
s
### getA
udioAsset
s
getA
llPeers(callback: AsyncCallback
<
Array
<
PeerInfo
>>
): void;
getA
udioAssets(options: FetchOptions, callback: AsyncCallback
<
FetchResult
<
FileAsset
>>
): void;
获取
所有对端设备的信息,使用callback方式返回异步
结果。
获取
音频文件,使用callback方式返回
结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.DistributedCore
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**
:ohos.permission.READ_AUDIO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | --------------------------------- | ---- | ------------ |
| callback | AsyncCallback
<
Array
<
[PeerInfo](#peerinfo)
>>
| 是 | 返回在线设备列表 |
| -------- | ------------------------ | ---- | ------------------------- |
| options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 检索选项。 |
| callback | AsyncCallback
<
[FetchResult](#fetchresult)
<
[FileAsset](#fileasset)
>>
| 是 | callback返回音频检索结果。 |
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getAllPeersDemo
'
);
mgr
.
getAllPeers
((
err
,
devicesInfo
)
=>
{
if
(
devicesInfo
!=
undefined
)
{
console
.
log
(
'
getAllPeers succeed.
'
);
for
(
let
i
=
0
;
i
<
devicesInfo
.
length
;
i
++
)
{
console
.
info
(
'
get distributed info
'
+
devicesInfo
[
i
].
deviceName
+
devicesInfo
[
i
].
networkId
);
console
.
info
(
'
getAudioAssets
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOptions
=
{
fetchColumns
:
[],
predicates
:
predicates
};
mgr
.
getAudioAssets
(
fetchOptions
,
async
(
err
,
fetchResult
)
=>
{
if
(
fetchResult
!=
undefined
)
{
console
.
info
(
'
fetchFileResult success
'
);
let
fileAsset
=
await
fetchResult
.
getFirstObject
();
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
'
fileAsset.displayName :
'
+
fileAsset
.
displayName
);
}
}
else
{
console
.
error
(
'
getAllPeers failed. message =
'
,
err
);
console
.
error
(
'
fetchFileResult fail
'
+
err
);
}
});
}
```
### getA
llPeer
s
### getA
udioAsset
s
getA
llPeers(): Promise
<
Array
<
PeerInfo
>>
;
getA
udioAssets(options: FetchOptions): Promise
<
FetchResult
<
FileAsset
>>
;
获取所有对端设备的信息,使用promise方式返回异步结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.DistributedCore
获取音频文件,使用callback方式返回结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**
:ohos.permission.READ_AUDIO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 检索选项。 |
**返回值:**
| 类型 | 说明 |
| --------------------------- | --------------
---------------
|
| Promise
<
Array
<
[PeerInfo](#peerinfo)
>>
| Promise实例,返回所有设备列表
|
| --------------------------- | -------------- |
| Promise
<
[FetchResult](#fetchresult)
<
[FileAsset](#fileasset)
>>
| Promise对象,返回音频检索结果。
|
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getAllPeersDemo
'
);
console
.
info
(
'
getAudioAssets
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOptions
=
{
fetchColumns
:
[],
predicates
:
predicates
};
try
{
var
devicesInfo
=
await
mgr
.
getAllPeers
(
);
var
fetchResult
=
await
mgr
.
getAudioAssets
(
fetchOptions
);
}
catch
(
err
)
{
console
.
error
(
'
getA
llPeers failed.
message =
'
,
err
);
console
.
error
(
'
getA
udioAssets failed,
message =
'
,
err
);
}
if
(
devicesInfo
!=
undefined
)
{
console
.
log
(
'
getAllPeers succeed.
'
);
for
(
let
i
=
0
;
i
<
devicesInfo
.
length
;
i
++
)
{
console
.
info
(
'
get distributed info
'
+
devicesInfo
[
i
].
deviceName
+
devicesInfo
[
i
].
networkId
);
if
(
fetchResult
!=
undefined
)
{
console
.
info
(
'
fetchFileResult success
'
);
let
fileAsset
=
await
fetchResult
.
getFirstObject
();
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
'
fileAsset.displayName :
'
+
fileAsset
.
displayName
);
}
}
else
{
console
.
error
(
'
get distributed fail
'
);
}
}
```
###
releas
e
###
delet
e
release(callback: AsyncCallback
<
void
>
): void
delete(uri: string, callback: AsyncCallback
<
void
>
): void;
释放UserFileManager实例。
当后续不需要使用UserFileManager实例中的方法时调用。
删除媒体文件,删除的文件进入到回收站。
**需要权限**
:ohos.permission.READ_IMAGEVIDEO 和 ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.READ_AUDIO 和 ohos.permission.WRITE_AUDIO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | -------------------- |
| callback | AsyncCallback
<
void
>
| 是 | 回调表示成功还是失败 |
| -------- | ------------------------- | ---- | ---------- |
| uri | string | 是 | 媒体文件uri。 |
| callback | AsyncCallback
<
void
>
| 是 | callback返回void。 |
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
releaseDemo
'
);
mgr
.
release
((
err
)
=>
{
if
(
err
!=
undefined
)
{
console
.
error
(
'
release failed. message =
'
,
err
);
console
.
info
(
'
deleteAssetDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOptions
=
{
fetchColumns
:
[],
predicates
:
predicates
};
try
{
const
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOptions
);
var
asset
=
await
fetchResult
.
getFirstObject
();
}
catch
(
err
)
{
console
.
info
(
'
fetch failed, message =
'
,
err
);
}
if
(
asset
==
undefined
)
{
console
.
error
(
'
asset not exist
'
);
return
;
}
mgr
.
delete
(
asset
.
uri
,
(
err
)
=>
{
if
(
err
==
undefined
)
{
console
.
info
(
'
delete successfully
'
);
}
else
{
console
.
info
(
'
release ok.
'
);
console
.
error
(
'
delete failed with error:
'
+
err
);
}
});
}
```
###
releas
e
###
delet
e
release(): Promise
<
void
>
;
delete(uri: string): Promise
<
void
>
;
释放UserFileManager实例。
当后续不需要使用UserFileManager 实例中的方法时调用。
删除媒体文件,删除的文件进入到回收站。
**需要权限**
:ohos.permission.READ_IMAGEVIDEO 和 ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.READ_AUDIO 和 ohos.permission.WRITE_AUDIO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| uri | string | 是 | 媒体文件uri。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | --------------------------------- |
| Promise
<
void
>
| Promise实例,用于获取异步返回结果 |
| --------------------------------------- | ----------------- |
| Promise
<
void
>
| Promise对象,返回void。 |
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
deleteDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOptions
=
{
fetchColumns
:
[],
predicates
:
predicates
};
try
{
const
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOptions
);
var
asset
=
await
fetchResult
.
getFirstObject
();
}
catch
(
err
)
{
console
.
info
(
'
fetch failed, message =
'
,
err
);
}
if
(
asset
==
undefined
)
{
console
.
error
(
'
asset not exist
'
);
return
;
}
try
{
await
mgr
.
delete
(
asset
.
uri
);
console
.
info
(
'
delete successfully
'
);
}
catch
(
err
)
{
console
.
error
(
'
delete failed with error:
'
+
err
);
}
}
```
### on
on(type: ChangeEvent, callback: Callback
<
void
>
): void
打开文件管理库变更通知,使用callback方式返回异步结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------------------- | ---- | ------------------------------------------------------------ |
| type |
[
ChangeEvent
](
#changeevent
)
| 是 | 媒体类型
<br/>
'deviceChange':
注册设备变更
<br/>
'albumChange':
相册变更
<br/>
'imageChange':
图片文件变更
<br/>
'audioChange':
音频文件变更
<br/>
'videoChange':
视频文件变更
<br/>
'remoteFileChange':
注册设备上文件变更 |
| callback | Callback
<
void
>
| 是 | callback返回void |
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
onDemo
'
);
let
count
=
0
;
mgr
.
on
(
'
imageChange
'
,
()
=>
{
count
++
;
// image file had changed, do something
});
try
{
let
testFileName
=
'
testFile
'
+
Date
.
now
()
+
'
.jpg
'
;
let
fileAsset
=
await
mgr
.
createPhotoAsset
(
testFileName
);
console
.
info
(
'
createPhotoAsset file displayName
'
+
fileAsset
.
displayName
);
console
.
info
(
'
createPhotoAsset successfully
'
);
}
catch
(
err
)
{
console
.
error
(
'
createPhotoAsset failed, message =
'
+
err
);
}
//sleep 1s
if
(
count
>
0
)
{
console
.
info
(
'
onDemo success
'
);
}
else
{
console
.
error
(
'
onDemo fail
'
);
}
mgr
.
off
(
'
imageChange
'
,
()
=>
{
// stop listening success
});
}
```
### off
off(type: ChangeEvent, callback?: Callback
<
void
>
): void
关闭文件管理库变更通知,使用callback方式返回异步结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------------------- | ---- | ------------------------------------------------------------ |
| type |
[
ChangeEvent
](
#changeevent
)
| 是 | 媒体类型
<br/>
'deviceChange':
注册设备变更
<br/>
'albumChange':
相册变更
<br/>
'imageChange':
图片文件变更
<br/>
'audioChange':
音频文件变更
<br/>
'videoChange':
视频文件变更
<br/>
'remoteFileChange':
注册设备上文件变更。 |
| callback | Callback
<
void
>
| 否 | callback返回void。 |
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
offDemo
'
);
let
count
=
0
;
mgr
.
on
(
'
imageChange
'
,
()
=>
{
count
++
;
// image file had changed, do something
});
mgr
.
off
(
'
imageChange
'
,
()
=>
{
// stop listening success
});
try
{
let
testFileName
=
'
testFile
'
+
Date
.
now
()
+
'
.jpg
'
;
let
fileAsset
=
await
mgr
.
createPhotoAsset
(
testFileName
);
console
.
info
(
'
createPhotoAsset file displayName
'
+
fileAsset
.
displayName
);
console
.
info
(
'
createPhotoAsset successfully
'
);
}
catch
(
err
)
{
console
.
error
(
'
createPhotoAsset failed, message =
'
+
err
);
}
//sleep 1s
if
(
count
==
0
)
{
console
.
info
(
'
offDemo success
'
);
}
else
{
console
.
error
(
'
offDemo fail
'
);
}
}
```
### getActivePeers
getActivePeers(callback: AsyncCallback
<
Array
<
PeerInfo
>>
): void;
获取在线对端设备的信息,使用callback方式返回异步结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.DistributedCore
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | --------------------------------- | ---- | ------------ |
| callback | AsyncCallback
<
Array
<
[PeerInfo](#peerinfo)
>>
| 是 | 返回在线设备列表。 |
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
getActivePeersDemo
'
);
mgr
.
getActivePeers
((
err
,
devicesInfo
)
=>
{
if
(
devicesInfo
!=
undefined
)
{
console
.
log
(
'
getActivePeers succeed.
'
);
for
(
let
i
=
0
;
i
<
devicesInfo
.
length
;
i
++
)
{
console
.
info
(
'
get distributed info
'
+
devicesInfo
[
i
].
deviceName
+
devicesInfo
[
i
].
networkId
);
}
}
else
{
console
.
error
(
'
getActivePeers failed. message =
'
,
err
);
}
});
}
```
### getActivePeers
getActivePeers(): Promise
<
Array
<
PeerInfo
>>
;
获取在线对端设备的信息,使用promise方式返回异步结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.DistributedCore
**返回值:**
| 类型 | 说明 |
| --------------------------- | ----------------------------- |
| Promise
<
Array
<
[PeerInfo](#peerinfo)
>>
| Promise对象,返回在线设备列表。 |
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
getActivePeersDemo
'
);
try
{
var
devicesInfo
=
await
mgr
.
getActivePeers
();
}
catch
(
err
)
{
console
.
error
(
'
getActivePeers failed. message =
'
,
err
);
}
if
(
devicesInfo
!=
undefined
)
{
console
.
log
(
'
getActivePeers succeed.
'
);
for
(
let
i
=
0
;
i
<
devicesInfo
.
length
;
i
++
)
{
console
.
info
(
'
get distributed info
'
+
devicesInfo
[
i
].
deviceName
+
devicesInfo
[
i
].
networkId
);
}
}
else
{
console
.
error
(
'
get distributed fail
'
);
}
}
```
### getAllPeers
getAllPeers(callback: AsyncCallback
<
Array
<
PeerInfo
>>
): void;
获取所有对端设备的信息,使用callback方式返回异步结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.DistributedCore
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | --------------------------------- | ---- | ------------ |
| callback | AsyncCallback
<
Array
<
[PeerInfo](#peerinfo)
>>
| 是 | 返回在线设备列表。 |
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
getAllPeersDemo
'
);
mgr
.
getAllPeers
((
err
,
devicesInfo
)
=>
{
if
(
devicesInfo
!=
undefined
)
{
console
.
log
(
'
getAllPeers succeed.
'
);
for
(
let
i
=
0
;
i
<
devicesInfo
.
length
;
i
++
)
{
console
.
info
(
'
get distributed info
'
+
devicesInfo
[
i
].
deviceName
+
devicesInfo
[
i
].
networkId
);
}
}
else
{
console
.
error
(
'
getAllPeers failed. message =
'
,
err
);
}
});
}
```
### getAllPeers
getAllPeers(): Promise
<
Array
<
PeerInfo
>>
;
获取所有对端设备的信息,使用promise方式返回异步结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.DistributedCore
**返回值:**
| 类型 | 说明 |
| --------------------------- | ----------------------------- |
| Promise
<
Array
<
[PeerInfo](#peerinfo)
>>
| Promise对象,返回所有设备列表。 |
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
getAllPeersDemo
'
);
try
{
var
devicesInfo
=
await
mgr
.
getAllPeers
();
}
catch
(
err
)
{
console
.
error
(
'
getAllPeers failed. message =
'
,
err
);
}
if
(
devicesInfo
!=
undefined
)
{
console
.
log
(
'
getAllPeers succeed.
'
);
for
(
let
i
=
0
;
i
<
devicesInfo
.
length
;
i
++
)
{
console
.
info
(
'
get distributed info
'
+
devicesInfo
[
i
].
deviceName
+
devicesInfo
[
i
].
networkId
);
}
}
else
{
console
.
error
(
'
get distributed fail
'
);
}
}
```
### release
release(callback: AsyncCallback
<
void
>
): void
释放UserFileManager实例。
当后续不需要使用UserFileManager实例中的方法时调用。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | -------------------- |
| callback | AsyncCallback
<
void
>
| 是 | 回调表示成功还是失败。 |
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
releaseDemo
'
);
mgr
.
release
((
err
)
=>
{
if
(
err
!=
undefined
)
{
console
.
error
(
'
release failed. message =
'
,
err
);
}
else
{
console
.
info
(
'
release ok.
'
);
}
});
}
```
### release
release(): Promise
<
void
>
释放UserFileManager实例。
当后续不需要使用UserFileManager 实例中的方法时调用。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**返回值:**
| 类型 | 说明 |
| ------------------- | --------------------------------- |
| Promise
<
void
>
| Promise对象,返回void。 |
**示例:**
...
...
@@ -890,42 +1357,557 @@ release(): Promise<void>
async
function
example
()
{
console
.
info
(
'
releaseDemo
'
);
try
{
await
mgr
.
release
();
console
.
info
(
'
release ok.
'
);
await
mgr
.
release
();
console
.
info
(
'
release ok.
'
);
}
catch
(
err
)
{
console
.
error
(
'
release failed. message =
'
,
err
);
}
}
```
## FileAsset
提供封装文件属性的方法。
### 属性
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ------------------------- | ------------------------ | ---- | ---- | ------------------------------------------------------ |
| uri | string | 是 | 否 | 文件资源uri(如:file://media/image/2)。 |
| fileType |
[
FileType
](
#filetype
)
| 是 | 否 | 媒体文件类型 |
| displayName | string | 是 | 是 | 显示文件名,包含后缀名。 |
### get
get(member: string): MemberType;
获取FileAsset成员参数。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ----- |
| member | string | 是 | 成员参数名称例如:ImageVideoKey.URI。 |
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
fileAssetGetDemo
'
);
try
{
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[
'
title
'
],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
let
fileAsset
=
await
fetchResult
.
getFirstObject
();
let
title
=
userFileManager
.
ImageVideoKey
.
TITLE
;
let
fileAssetTitle
=
fileAsset
.
get
(
title
.
toString
());
console
.
info
(
'
fileAsset Get fileAssetTitle =
'
,
fileAssetTitle
);
}
catch
(
err
)
{
console
.
error
(
'
release failed. message =
'
,
err
);
}
}
```
### set
set(member: string, value: string): void;
设置FileAsset成员参数。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ----- |
| member | string | 是 | 成员参数名称例如:ImageVideoKey.URI。 |
| value | string | 是 | 设置成员参数名称,只能修改ImageVideoKey.DISPLAY_NAME的值。 |
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
fileAssetSetDemo
'
);
try
{
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
let
fileAsset
=
await
fetchResult
.
getFirstObject
();
let
displayName
=
userFileManager
.
ImageVideoKey
.
DISPLAY_NAME
;
fileAsset
.
set
(
displayName
,
'
newDisplayName1
'
);
}
catch
(
err
)
{
console
.
error
(
'
release failed. message =
'
,
err
);
}
}
```
### commitModify
commitModify(callback: AsyncCallback
<
void
>
): void
修改文件的元数据,使用callback方式返回异步结果。
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.WRITE_AUDIO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ----- |
| callback | AsyncCallback
<
void
>
| 是 | callback返回void。 |
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
commitModifyDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
let
fileAsset
=
await
fetchResult
.
getFirstObject
();
let
displayName
=
userFileManager
.
ImageVideoKey
.
DISPLAY_NAME
;
let
fileAssetDisplayName
=
fileAsset
.
get
(
displayName
);
console
.
info
(
'
fileAsset get fileAssetDisplayName =
'
,
fileAssetDisplayName
);
fileAsset
.
set
(
displayName
,
'
newDisplayName2
'
);
fileAsset
.
commitModify
((
err
)
=>
{
if
(
err
==
undefined
)
{
let
newFileAssetDisplayName
=
fileAsset
.
get
(
displayName
);
console
.
info
(
'
fileAsset get newFileAssetDisplayName =
'
,
newFileAssetDisplayName
);
}
else
{
console
.
error
(
'
commitModify failed, message =
'
,
err
);
}
});
}
```
### commitModify
commitModify(): Promise
<
void
>
修改文件的元数据,使用promise方式返回异步结果。
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.WRITE_AUDIO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**返回值:**
| 类型 | 说明 |
| ------------------- | ---------- |
| Promise
<
void
>
| Promise对象,返回void。 |
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
commitModifyDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
let
fileAsset
=
await
fetchResult
.
getFirstObject
();
let
displayName
=
userFileManager
.
ImageVideoKey
.
DISPLAY_NAME
;
let
fileAssetDisplayName
=
fileAsset
.
get
(
displayName
);
console
.
info
(
'
fileAsset get fileAssetDisplayName =
'
,
fileAssetDisplayName
);
fileAsset
.
set
(
displayName
,
'
newDisplayName3
'
);
try
{
await
fileAsset
.
commitModify
();
let
newFileAssetDisplayName
=
fileAsset
.
get
(
displayName
);
console
.
info
(
'
fileAsset get newFileAssetDisplayName =
'
,
newFileAssetDisplayName
);
}
catch
(
err
)
{
console
.
error
(
'
release failed. message =
'
,
err
);
}
}
```
### open
open(mode: string, callback: AsyncCallback
<
number
>
): void
打开当前文件,使用callback方式返回异步结果。
**注意**
:当前写操作是互斥的操作,写操作完成后需要调用close进行释放。
**需要权限**
:ohos.permission.READ_IMAGEVIDEO 或 ohos.permission.READ_AUDIO 或 ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.WRITE_AUDIO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | --------------------------- | ---- | ----------------------------------- |
| mode | string | 是 | 打开文件方式,如:'r'(只读), 'w'(只写), 'rw'(读写)。 |
| callback | AsyncCallback
<
number
>
| 是 | callback返回文件描述符。 |
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
openDemo
'
);
let
testFileName
=
'
testFile
'
+
Date
.
now
()
+
'
.jpg
'
;
const
fileAsset
=
await
mgr
.
createPhotoAsset
(
testFileName
);
fileAsset
.
open
(
'
rw
'
,
(
err
,
fd
)
=>
{
if
(
fd
!=
undefined
)
{
console
.
info
(
'
File fd
'
+
fd
);
fileAsset
.
close
(
fd
);
}
else
{
console
.
error
(
'
File err
'
+
err
);
}
});
}
```
### open
open(mode: string): Promise
<
number
>
打开当前文件,使用promise方式返回异步结果。
**注意**
:当前写操作是互斥的操作,写操作完成后需要调用close进行释放。
**需要权限**
:ohos.permission.READ_IMAGEVIDEO 或 ohos.permission.READ_AUDIO 或 ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.WRITE_AUDIO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---- | ------ | ---- | ----------------------------------- |
| mode | string | 是 | 打开文件方式,如:'r'(只读), 'w'(只写), 'rw'(读写)。 |
**返回值:**
| 类型 | 说明 |
| --------------------- | ------------- |
| Promise
<
number
>
| Promise对象,返回文件描述符。 |
**示例:**
```
ts
async
function
example
()
{
console
.
info
(
'
openDemo
'
);
try
{
let
testFileName
=
'
testFile
'
+
Date
.
now
()
+
'
.jpg
'
;
const
fileAsset
=
await
mgr
.
createPhotoAsset
(
testFileName
);
let
fd
=
await
fileAsset
.
open
(
'
rw
'
);
if
(
fd
!=
undefined
)
{
console
.
info
(
'
File fd
'
+
fd
);
fileAsset
.
close
(
fd
);
}
else
{
console
.
error
(
'
open File fail
'
);
}
}
catch
(
err
)
{
console
.
error
(
'
open Demo err
'
+
err
);
}
}
```
### close
close(fd: number, callback: AsyncCallback
<
void
>
): void
关闭当前文件,使用callback方式返回异步结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ----- |
| fd | number | 是 | 文件描述符。 |
| callback | AsyncCallback
<
void
>
| 是 | callback返回void。 |
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
closeDemo
'
);
try
{
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
const
fileAsset
=
await
fetchResult
.
getFirstObject
();
let
fd
=
await
fileAsset
.
open
(
'
rw
'
);
console
.
info
(
'
file fd
'
,
fd
);
fileAsset
.
close
(
fd
,
(
err
)
=>
{
if
(
err
==
undefined
)
{
console
.
info
(
'
asset close succeed.
'
);
}
else
{
console
.
error
(
'
close failed, message =
'
+
err
);
}
});
}
catch
(
err
)
{
console
.
error
(
'
release failed. message =
'
,
err
);
console
.
error
(
'
close failed, message =
'
+
err
);
}
}
```
##
FileAsset
##
# close
提供封装文件属性的方法。
close(fd: number): Promise
<
void
>
### 属性
关闭当前文件,使用promise方式返回异步结果。
**系统能力
:**
以下各项对应的系统能力均为
SystemCapability.FileManagement.UserFileManager.Core
**系统能力
**
:
SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ------------------------- | ------------------------ | ---- | ---- | ------------------------------------------------------ |
| uri | string | 是 | 否 | 文件资源uri(如:dataability:///media/image/2) |
| fileType |
[
FileType
](
#filetype
)
| 是 | 否 | 媒体文件类型 |
| displayName | string | 是 | 是 | 显示文件名,包含后缀名 |
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---- | ------ | ---- | ----- |
| fd | number | 是 | 文件描述符。 |
### get
**返回值:**
get(member: string): MemberType;
| 类型 | 说明 |
| ------------------- | ---------- |
| Promise
<
void
>
| Promise对象,返回void。 |
获取FileAsset成员参数。
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
closeDemo
'
);
try
{
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
const
asset
=
await
fetchResult
.
getFirstObject
();
let
fd
=
await
asset
.
open
(
'
rw
'
);
console
.
info
(
'
file fd
'
,
fd
);
await
asset
.
close
(
fd
);
console
.
info
(
'
asset close succeed.
'
);
}
catch
(
err
)
{
console
.
error
(
'
close failed, message =
'
+
err
);
}
}
```
### getThumbnail
getThumbnail(callback: AsyncCallback
<
image.PixelMap
>
): void
获取文件的缩略图,使用callback方式返回异步结果。
**需要权限**
:ohos.permission.READ_IMAGEVIDEO 或 ohos.permission.READ_AUDIO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ----------------------------------- | ---- | ---------------- |
| callback | AsyncCallback
<
[image.PixelMap](js-apis-image.md#pixelmap7)
>
| 是 | callback返回缩略图的PixelMap。 |
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getThumbnailDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
const
asset
=
await
fetchResult
.
getFirstObject
();
console
.
info
(
'
asset displayName =
'
,
asset
.
displayName
);
asset
.
getThumbnail
((
err
,
pixelMap
)
=>
{
if
(
err
==
undefined
)
{
console
.
info
(
'
getThumbnail successful
'
+
pixelMap
);
}
else
{
console
.
error
(
'
getThumbnail fail
'
,
err
);
}
});
}
```
### getThumbnail
getThumbnail(size: image.Size, callback: AsyncCallback
<
image.PixelMap
>
): void
获取文件的缩略图,传入缩略图尺寸,使用callback方式返回异步结果。
**需要权限**
:ohos.permission.READ_IMAGEVIDEO 或 ohos.permission.READ_AUDIO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ----------------------------------- | ---- | ---------------- |
| size |
[
image.Size
](
js-apis-image.md#size
)
| 是 | 缩略图尺寸。 |
| callback | AsyncCallback
<
[image.PixelMap](js-apis-image.md#pixelmap7)
>
| 是 | callback返回缩略图的PixelMap。 |
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getThumbnailDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
size
=
{
width
:
720
,
height
:
720
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
const
asset
=
await
fetchResult
.
getFirstObject
();
console
.
info
(
'
asset displayName =
'
,
asset
.
displayName
);
asset
.
getThumbnail
(
size
,
(
err
,
pixelMap
)
=>
{
if
(
err
==
undefined
)
{
console
.
info
(
'
getThumbnail successful
'
+
pixelMap
);
}
else
{
console
.
error
(
'
getThumbnail fail
'
,
err
);
}
});
}
```
### getThumbnail
getThumbnail(size?: image.Size): Promise
<
image.PixelMap
>
获取文件的缩略图,传入缩略图尺寸,使用promise方式返回异步结果。
**需要权限**
:ohos.permission.READ_IMAGEVIDEO 或 ohos.permission.READ_AUDIO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---- | -------------- | ---- | ----- |
| size |
[
image.Size
](
js-apis-image.md#size
)
| 否 | 缩略图尺寸。 |
**返回值:**
| 类型 | 说明 |
| ----------------------------- | --------------------- |
| Promise
<
[image.PixelMap](js-apis-image.md#pixelmap7)
>
| Promise对象,返回缩略图的PixelMap。 |
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getThumbnailDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
size
=
{
width
:
720
,
height
:
720
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
const
asset
=
await
fetchResult
.
getFirstObject
();
console
.
info
(
'
asset displayName =
'
,
asset
.
displayName
);
asset
.
getThumbnail
(
size
).
then
((
pixelMap
)
=>
{
console
.
info
(
'
getThumbnail successful
'
+
pixelMap
);
}).
catch
((
err
)
=>
{
console
.
error
(
'
getThumbnail fail
'
+
err
);
});
}
```
### favorite
favorite(isFavorite: boolean, callback: AsyncCallback
<
void
>
): void
将文件设置为收藏文件,使用callback方式返回异步结果。
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.WRITE_AUDIO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------------------------- | ---- | ---------------------------------- |
| isFavorite | boolean | 是 | 是否设置为收藏文件, true:设置为收藏文件,false:取消收藏。 |
| callback | AsyncCallback
<
void
>
| 是 | callback返回void。 |
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
favoriteDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
const
asset
=
await
fetchResult
.
getFirstObject
();
asset
.
favorite
(
true
,
(
err
)
=>
{
if
(
err
==
undefined
)
{
console
.
info
(
'
favorite successfully
'
);
}
else
{
console
.
error
(
'
favorite failed with error:
'
+
err
);
}
});
}
```
### favorite
favorite(isFavorite: boolean): Promise
<
void
>
将文件设置为收藏文件,使用promise方式返回异步结果。
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.WRITE_AUDIO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ----- |
| member | string | 是 | 成员参数名称例如:ImageVideoKey.URI |
| ---------- | ------- | ---- | ---------------------------------- |
| isFavorite | boolean | 是 | 是否设置为收藏文件, true:设置为收藏文件,false:取消收藏。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ---------- |
| Promise
<
void
>
| Promise对象,返回void。 |
**示例:**
...
...
@@ -933,38 +1915,40 @@ get(member: string): MemberType;
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
fileAssetGetDemo
'
);
try
{
console
.
info
(
'
favoriteDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
let
fileAsset
=
await
fetchResult
.
getFirstObject
();
let
title
=
userFileManager
.
ImageVideoKey
.
TITLE
;
let
fileAssetTitle
=
fileAsset
.
get
(
title
.
toString
());
console
.
info
(
'
fileAsset Get fileAssetTitle =
'
,
fileAssetTitle
);
}
catch
(
err
)
{
console
.
error
(
'
release failed. message =
'
,
err
);
}
const
asset
=
await
fetchResult
.
getFirstObject
();
asset
.
favorite
(
true
).
then
(
function
()
{
console
.
info
(
'
favorite successfully
'
);
}).
catch
(
function
(
err
)
{
console
.
error
(
'
favorite failed with error:
'
+
err
);
});
}
```
### set
### set
Hidden<sup>10+</sup>
set
(member: string, value: string): void;
set
Hidden(hiddenState: boolean, callback: AsyncCallback
<
void
>
): void
设置FileAsset成员参数。
将文件设置为隐私文件,使用callback方式返回异步结果。
隐私文件存在隐私相册中,对三方应用不开放,用户通过隐私相册去获取隐私文件后可以通过设置hiddenState为false来从隐私相册中移除。
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------
| ------------------------- | ---- |
----- |
|
member | string | 是 | 成员参数名称例如:ImageVideoKey.URI
|
|
value | string | 是 | 设置成员参数名称,只能修改ImageVideoKey.TITLE的值
|
| --------
-- | ------------------------- | ---- | -----------------------------
----- |
|
hiddenState | boolean | 是 | 是否设置为隐藏文件,true:将文件资产放入隐藏相册;false:从隐藏相册中恢复。
|
|
callback | AsyncCallback
<
void
>
| 是 | callback返回void。
|
**示例:**
...
...
@@ -972,38 +1956,47 @@ set(member: string, value: string): void;
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
fileAssetSetDemo
'
);
try
{
console
.
info
(
'
setHiddenDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
let
fileAsset
=
await
fetchResult
.
getFirstObject
();
let
title
=
userFileManager
.
ImageVideoKey
.
TITLE
;
fileAsset
.
set
(
title
.
toString
(),
"
newTitle
"
);
}
catch
(
err
)
{
console
.
error
(
'
release failed. message =
'
,
err
);
const
asset
=
await
fetchResult
.
getFirstObject
();
asset
.
setHidden
(
true
,
(
err
)
=>
{
if
(
err
==
undefined
)
{
console
.
info
(
'
setHidden successfully
'
);
}
else
{
console
.
error
(
'
setHidden failed with error:
'
+
err
);
}
});
}
```
###
commitModify
###
setHidden<sup>10+</sup>
commitModify(callback: AsyncCallback
<
void
>
): void
setHidden(hiddenState: boolean): Promise
<
void
>
修改文件的元数据,使用callback
方式返回异步结果。
将文件设置为隐私文件,使用promise
方式返回异步结果。
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.WRITE_AUDIO
隐私文件存在隐私相册中,对三方应用不开放,用户通过隐私相册去获取隐私文件后可以通过设置hiddenState为false来从隐私相册中移除。
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ----- |
| callback | AsyncCallback
<
void
>
| 是 | 回调返回空 |
| ---------- | ------- | ---- | ---------------------------------- |
| hiddenState | boolean | 是 | 是否设置为隐藏文件,true:将文件资产放入隐藏相册;false:从隐藏相册中恢复。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ---------- |
| Promise
<
void
>
| Promise对象,返回void。 |
**示例:**
...
...
@@ -1011,44 +2004,42 @@ commitModify(callback: AsyncCallback<void>): void
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
commitModifyDemo
'
);
// 示例代码为将文件从隐藏相册中恢复,需要先在隐藏相册预置资源
console
.
info
(
'
setHiddenDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
let
fileAsset
=
await
fetchResult
.
getFirstObject
();
let
title
=
userFileManager
.
ImageVideoKey
.
TITLE
;
let
fileAssetTitle
=
fileAsset
.
get
(
title
.
toString
());
console
.
info
(
'
fileAsset Get fileAssetTitle =
'
,
fileAssetTitle
);
fileAsset
.
set
(
title
.
toString
(),
"
newTitle
"
);
fileAsset
.
commitModify
((
err
)
=>
{
if
(
err
==
undefined
)
{
let
newFileAssetTitle
=
fileAsset
.
get
(
title
.
toString
());
console
.
info
(
'
fileAsset Get newFileAssetTitle =
'
,
newFileAssetTitle
);
}
else
{
console
.
error
(
'
commitModify failed, message =
'
,
err
);
}
let
albumList
=
await
mgr
.
getAlbums
(
userFileManager
.
AlbumType
.
SYSTEM
,
userFileManager
.
AlbumSubType
.
HIDDEN
);
const
album
=
await
albumList
.
getFirstObject
();
let
fetchResult
=
await
album
.
getPhotoAssets
(
fetchOption
);
const
asset
=
await
fetchResult
.
getFirstObject
();
asset
.
setHidden
(
false
).
then
(()
=>
{
console
.
info
(
'
setHidden successfully
'
);
}).
catch
((
err
)
=>
{
console
.
error
(
'
setHidden failed with error:
'
+
err
);
});
}
```
##
# commitModify
##
FetchResult
commitModify(): Promise
<
void
>
文件检索结果集。
修改文件的元数据,使用promise方式返回异步结果。
### getCount
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.WRITE_AUDIO
getCount(): number
获取文件检索结果中的文件总数。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**返回值:**
| 类型 | 说明 |
| ------
------------- | --
-------- |
|
Promise
<
void
>
| Promise返回空
|
| ------
|
-------- |
|
number | 检索到的文件总数。
|
**示例:**
...
...
@@ -1056,124 +2047,98 @@ commitModify(): Promise<void>
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
commitModify
Demo
'
);
console
.
info
(
'
getCount
Demo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
let
fileAsset
=
await
fetchResult
.
getFirstObject
();
let
title
=
userFileManager
.
ImageVideoKey
.
TITLE
;
let
fileAssetTitle
=
fileAsset
.
get
(
title
.
toString
());
console
.
info
(
'
fileAsset Get fileAssetTitle =
'
,
fileAssetTitle
);
fileAsset
.
set
(
title
.
toString
(),
"
newTitle
"
);
try
{
await
fileAsset
.
commitModify
();
let
newFileAssetTitle
=
fileAsset
.
get
(
title
.
toString
());
console
.
info
(
'
fileAsset Get newFileAssetTitle =
'
,
newFileAssetTitle
);
}
catch
(
err
)
{
console
.
error
(
'
release failed. message =
'
,
err
);
}
const
fetchCount
=
fetchResult
.
getCount
();
console
.
info
(
'
fetchCount =
'
,
fetchCount
);
}
```
### open
open(mode: string, callback: AsyncCallback
<
number
>
): void
打开当前文件,使用callback方式返回异步结果。
### isAfterLast
**注意**
:当前写操作是互斥的操作,写操作完成后需要调用close进行释放。
isAfterLast(): boolean
**需要权限**
:ohos.permission.READ_IMAGEVIDEO 或 ohos.permission.READ_AUDIO 或 ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.WRITE_AUDIO
检查结果集是否指向最后一行。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**
参数
**
**
返回值:
**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | --------------------------- | ---- | ----------------------------------- |
| mode | string | 是 | 打开文件方式,如:'r'(只读), 'w'(只写), 'rw'(读写) |
| callback | AsyncCallback
<
number
>
| 是 | 回调返回文件描述符 |
| 类型 | 说明 |
| ------- | ---------------------------------- |
| boolean | 当读到最后一条记录后,后续没有记录返回true,否则返回false。 |
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
openDemo
'
);
let
testFileName
=
"
testFile
"
+
Date
.
now
()
+
"
.jpg
"
;
const
fileAsset
=
await
mgr
.
createPhotoAsset
(
testFileName
);
fileAsset
.
open
(
'
rw
'
,
(
err
,
fd
)
=>
{
if
(
fd
!=
undefined
)
{
console
.
info
(
'
File fd
'
+
fd
);
fileAsset
.
close
(
fd
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
const
fetchCount
=
fetchResult
.
getCount
();
console
.
info
(
'
count:
'
+
fetchCount
);
let
fileAsset
=
await
fetchResult
.
getLastObject
();
if
(
!
fetchResult
.
isAfterLast
())
{
console
.
info
(
'
fileAsset isAfterLast displayName =
'
,
fileAsset
.
displayName
);
}
else
{
console
.
error
(
'
File err
'
+
err
);
console
.
info
(
'
fileAsset not isAfterLast
'
);
}
});
}
```
### open
open(mode: string): Promise
<
number
>
打开当前文件,使用promise方式返回异步结果。
### close
**注意**
:当前写操作是互斥的操作,写操作完成后需要调用close进行释放。
close(): void
**需要权限**
:ohos.permission.READ_IMAGEVIDEO 或 ohos.permission.READ_AUDIO 或 ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.WRITE_AUDIO
释放 FetchFileResult 实例并使其失效。无法调用其他方法。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---- | ------ | ---- | ----------------------------------- |
| mode | string | 是 | 打开文件方式,如:'r'(只读), 'w'(只写), 'rw'(读写) |
**返回值:**
| 类型 | 说明 |
| --------------------- | ------------- |
| Promise
<
number
>
| Promise返回文件描述符 |
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
openDemo
'
);
console
.
info
(
'
fetchResultCloseDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
try
{
let
testFileName
=
"
testFile
"
+
Date
.
now
()
+
"
.jpg
"
;
const
fileAsset
=
await
mgr
.
createPhotoAsset
(
testFileName
);
let
fd
=
await
fileAsset
.
open
(
'
rw
'
);
if
(
fd
!=
undefined
)
{
console
.
info
(
'
File fd
'
+
fd
);
fileAsset
.
close
(
fd
);
}
else
{
console
.
error
(
'
open File fail
'
);
}
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
await
fetchResult
.
close
();
console
.
info
(
'
close succeed.
'
);
}
catch
(
err
)
{
console
.
error
(
'
open Demo err
'
+
err
);
console
.
error
(
'
close fail. message =
'
+
err
);
}
}
```
###
close
###
getFirstObject
close(fd: number, callback: AsyncCallback
<
void
>
): void
getFirstObject(callback: AsyncCallback
<
T
>
): void
关闭当前文件,使用callback方式返回异步
结果。
获取文件检索结果中的第一个文件资产。此方法使用callback形式返回
结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ----- |
| fd | number | 是 | 文件描述符 |
| callback | AsyncCallback
<
void
>
| 是 | 回调返回空 |
| -------- | --------------------------------------------- | ---- | ------------------------------------------- |
| callback | AsyncCallback
<
T
>
| 是 | 异步获取结果集中的第一个完成后的回调。 |
**示例:**
...
...
@@ -1181,49 +2146,36 @@ close(fd: number, callback: AsyncCallback<void>): void
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
closeDemo
'
);
try
{
console
.
info
(
'
getFirstObjectDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
const
fileAsset
=
await
fetchResult
.
getFirstObject
();
let
fd
=
await
fileAsset
.
open
(
'
rw
'
);
console
.
info
(
'
file fd
'
,
fd
);
fileAsset
.
close
(
fd
,
(
err
)
=>
{
if
(
err
==
undefined
)
{
console
.
info
(
'
asset close succeed.
'
);
fetchResult
.
getFirstObject
((
err
,
fileAsset
)
=>
{
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
'
fileAsset displayName:
'
,
fileAsset
.
displayName
);
}
else
{
console
.
error
(
'
close failed, message =
'
+
err
);
console
.
error
(
'
fileAsset failed with err:
'
+
err
);
}
});
}
catch
(
err
)
{
console
.
error
(
'
close failed, message =
'
+
err
);
}
}
```
###
close
###
getFirstObject
close(fd: number): Promise
<
void
>
getFirstObject(): Promise
<
T
>
关闭当前文件,使用promise方式返回异步结果
。
获取文件检索结果中的第一个文件资产。此方法使用promise方式来异步返回
。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---- | ------ | ---- | ----- |
| fd | number | 是 | 文件描述符 |
**返回值:**
| 类型 | 说明 |
| -------------------
|
---------- |
| Promise
<
void
>
| Promise返回空
|
| -------------------
-------------------- | ----------------
---------- |
| Promise
<
T
>
| Promise对象,返回结果集中第一个对象。
|
**示例:**
...
...
@@ -1231,40 +2183,71 @@ close(fd: number): Promise<void>
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
closeDemo
'
);
try
{
console
.
info
(
'
getFirstObjectDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
const
asset
=
await
fetchResult
.
getFirstObject
();
let
fd
=
await
asset
.
open
(
'
rw
'
);
console
.
info
(
'
file fd
'
,
fd
);
await
asset
.
close
(
fd
);
console
.
info
(
'
asset close succeed.
'
);
}
catch
(
err
)
{
console
.
error
(
'
close failed, message =
'
+
err
);
let
fileAsset
=
await
fetchResult
.
getFirstObject
();
console
.
info
(
'
fileAsset displayName:
'
,
fileAsset
.
displayName
);
}
```
### getNextObject
getNextObject(callback: AsyncCallback
<
T
>
): void
获取文件检索结果中的下一个文件资产。此方法使用callback形式返回结果。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------- | --------------------------------------------- | ---- | ----------------------------------------- |
| callbacke | AsyncCallback
<
T
>
| 是 | 异步返回结果集中下一个之后的回调。 |
**示例:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getNextObjectDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
await
fetchResult
.
getFirstObject
();
if
(
fetchResult
.
isAfterLast
())
{
fetchResult
.
getNextObject
((
err
,
fileAsset
)
=>
{
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
'
fileAsset displayName:
'
,
fileAsset
.
displayName
);
}
else
{
console
.
error
(
'
fileAsset failed with err:
'
+
err
);
}
});
}
}
```
### getThumbnail
getThumbnail(callback: AsyncCallback
<
image.PixelMap
>
): void
### getNextObject
获取文件的缩略图,使用callback方式返回异步结果。
getNextObject(): Promise
<
T
>
**需要权限**
:ohos.permission.READ_IMAGEVIDEO 或 ohos.permission.READ_AUDIO
获取文件检索结果中的下一个文件资产。此方法使用promise方式来异步返回。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**
参数
:**
**
返回值
:**
|
参数名 | 类型 | 必填 | 说明
|
| --------
| ----------------------------------- | ---- |
---------------- |
|
callback | AsyncCallback
<
[image.PixelMap](js-apis-image.md#pixelmap7)
>
| 是 | 回调返回缩略图的PixelMap
|
|
类型 | 说明
|
| --------
------------------------------- | -
---------------- |
|
Promise
<
T
>
| Promise对象,返回结果集中下一个对象。
|
**示例:**
...
...
@@ -1272,41 +2255,34 @@ getThumbnail(callback: AsyncCallback<image.PixelMap>): void
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
get
Thumbnail
Demo
'
);
console
.
info
(
'
get
NextObject
Demo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
const
asset
=
await
fetchResult
.
getFirstObject
();
console
.
info
(
'
asset displayName =
'
,
asset
.
displayName
);
asset
.
getThumbnail
((
err
,
pixelMap
)
=>
{
if
(
err
==
undefined
)
{
console
.
info
(
'
getThumbnail successful
'
+
pixelMap
);
}
else
{
console
.
error
(
'
getThumbnail fail
'
,
err
);
await
fetchResult
.
getFirstObject
();
if
(
fetchResult
.
isAfterLast
())
{
let
fileAsset
=
await
fetchResult
.
getNextObject
();
console
.
info
(
'
fileAsset displayName:
'
,
fileAsset
.
displayName
);
}
});
}
```
### getThumbnail
getThumbnail(size: image.Size, callback: AsyncCallback
<
image.PixelMap
>
): void
### getLastObject
获取文件的缩略图,传入缩略图尺寸,使用callback方式返回异步结果。
getLastObject(callback: AsyncCallback
<
T
>
): void
**需要权限**
:ohos.permission.READ_IMAGEVIDEO 或 ohos.permission.READ_AUDIO
获取文件检索结果中的最后一个文件资产。此方法使用callback回调来返回。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ----------------------------------- | ---- | ---------------- |
| size |
[
image.Size
](
js-apis-image.md#size
)
| 是 | 缩略图尺寸 |
| callback | AsyncCallback
<
[image.PixelMap](js-apis-image.md#pixelmap7)
>
| 是 | 回调返回缩略图的PixelMap |
| -------- | --------------------------------------------- | ---- | --------------------------- |
| callback | AsyncCallback
<
T
>
| 是 | 异步返回结果集中最后一个的回调。 |
**示例:**
...
...
@@ -1314,47 +2290,36 @@ getThumbnail(size: image.Size, callback: AsyncCallback<image.PixelMap>): v
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
get
Thumbnail
Demo
'
);
console
.
info
(
'
get
LastObject
Demo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
size
=
{
width
:
720
,
height
:
720
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
const
asset
=
await
fetchResult
.
getFirstObject
();
console
.
info
(
'
asset displayName =
'
,
asset
.
displayName
);
asset
.
getThumbnail
(
size
,
(
err
,
pixelMap
)
=>
{
if
(
err
==
undefined
)
{
console
.
info
(
'
getThumbnail successful
'
+
pixelMap
);
fetchResult
.
getLastObject
((
err
,
fileAsset
)
=>
{
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
'
fileAsset displayName:
'
,
fileAsset
.
displayName
);
}
else
{
console
.
error
(
'
getThumbnail fail
'
,
err
);
console
.
error
(
'
fileAsset failed with err:
'
+
err
);
}
});
}
```
### getThumbnail
getThumbnail(size?: image.Size): Promise
<
image.PixelMap
>
### getLastObject
获取文件的缩略图,传入缩略图尺寸,使用promise方式返回异步结果。
getLastObject(): Promise
<
T
>
**需要权限**
:ohos.permission.READ_IMAGEVIDEO 或 ohos.permission.READ_AUDIO
获取文件检索结果中的最后一个文件资产。此方法使用Promise方式来返回。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---- | -------------- | ---- | ----- |
| size |
[
image.Size
](
js-apis-image.md#size
)
| 否 | 缩略图尺寸 |
**返回值:**
| 类型 | 说明 |
| -----------------------------
| ----
----------------- |
| Promise
<
[image.PixelMap](js-apis-image.md#pixelmap7)
>
| Promise返回缩略图的PixelMap
|
| -----------------------------
---------- |
----------------- |
| Promise
<
T
>
| Promise对象,返回结果集中最后一个对象。
|
**示例:**
...
...
@@ -1362,40 +2327,32 @@ getThumbnail(size?: image.Size): Promise<image.PixelMap>
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
get
Thumbnail
Demo
'
);
console
.
info
(
'
get
LastObject
Demo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
size
=
{
width
:
720
,
height
:
720
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
const
asset
=
await
fetchResult
.
getFirstObject
();
console
.
info
(
'
asset displayName =
'
,
asset
.
displayName
);
asset
.
getThumbnail
(
size
).
then
((
pixelMap
)
=>
{
console
.
info
(
'
getThumbnail successful
'
+
pixelMap
);
}).
catch
((
err
)
=>
{
console
.
error
(
'
getThumbnail fail
'
+
err
);
});
let
fileAsset
=
await
fetchResult
.
getLastObject
();
console
.
info
(
'
fileAsset displayName:
'
,
fileAsset
.
displayName
);
}
```
### favorite
favorite(isFavorite: boolean, callback: AsyncCallback
<
void
>
): void
### getPositionObject
将文件设置为收藏文件,使用callback方式返回异步结果。
getPositionObject(index: number, callback: AsyncCallback
<
T
>
): void
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.WRITE_AUDIO
获取文件检索结果中具有指定索引的文件资产。此方法使用callback来返回。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| --------
-- | ------------------------- | ---- | ----------------
------------------ |
| i
sFavorite | boolean | 是 | 是否设置为收藏文件, true:设置为收藏文件,false:取消收藏
|
| callback
| AsyncCallback
<
void
>
| 是 | 回调返回空
|
| --------
| ---------------------------------------- | ---- |
------------------ |
| i
ndex | number | 是 | 要获取的文件的索引,从0开始。
|
| callback
| AsyncCallback
<
T
>
| 是 | 异步返回指定索引的文件资产的回调。
|
**示例:**
...
...
@@ -1403,45 +2360,42 @@ favorite(isFavorite: boolean, callback: AsyncCallback<void>): void
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
favorite
Demo
'
);
console
.
info
(
'
getPositionObject
Demo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
const
asset
=
await
fetchResult
.
getFirstObject
();
asset
.
favorite
(
true
,
(
err
)
=>
{
if
(
err
==
undefined
)
{
console
.
info
(
"
favorite successfully
"
);
fetchResult
.
getPositionObject
(
0
,
(
err
,
fileAsset
)
=>
{
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
'
fileAsset displayName:
'
,
fileAsset
.
displayName
);
}
else
{
console
.
error
(
"
favorite failed with error:
"
+
err
);
console
.
error
(
'
fileAsset failed with err:
'
+
err
);
}
});
}
```
### favorite
favorite(isFavorite: boolean): Promise
<
void
>
### getPositionObject
将文件设置为收藏文件,使用promise方式返回异步结果。
getPositionObject(index: number): Promise
<
T
>
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.WRITE_AUDIO
获取文件检索结果中具有指定索引的文件资产。此方法使用Promise形式返回文件Asset。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -----
----- | ------- | ---- | --------------------
-------------- |
| i
sFavorite | boolean | 是 | 是否设置为收藏文件, true:设置为收藏文件,false:取消收藏
|
| -----
| ------ | ---- |
-------------- |
| i
ndex | number | 是 | 要获取的文件的索引,从0开始。
|
**返回值:**
| 类型 | 说明 |
| -------------------
|
---------- |
| Promise
<
void
>
| Promise返回空
|
| -------------------
-------------------- | -------
---------- |
| Promise
<
T
>
| Promise对象,返回结果集中指定索引的一个对象。
|
**示例:**
...
...
@@ -1449,597 +2403,668 @@ favorite(isFavorite: boolean): Promise<void>
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
favorite
Demo
'
);
console
.
info
(
'
getPositionObject
Demo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
const
asset
=
await
fetchResult
.
getFirstObject
();
asset
.
favorite
(
true
).
then
(
function
()
{
console
.
info
(
"
favorite successfully
"
);
}).
catch
(
function
(
err
)
{
console
.
error
(
"
favorite failed with error:
"
+
err
);
});
let
fileAsset
=
await
fetchResult
.
getPositionObject
(
0
);
console
.
info
(
'
fileAsset displayName:
'
,
fileAsset
.
displayName
);
}
```
## FetchResult
文件检索结果集。
### getCount
### getAllObject<sup>10+</sup>
get
Count(): number
get
AllObject(callback: AsyncCallback
<
Array
<
T
>>
): void
获取文件检索结果中的
文件总数
。
获取文件检索结果中的
所有文件资产。此方法使用callback形式返回结果
。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**
返回值
:**
**
参数
:**
|
类型 | 说明
|
| ------
|
-------- |
|
number | 检索到的文件总数
|
|
参数名 | 类型 | 必填 | 说明
|
| ------
-- | --------------------------------------------- | ---- | -----------------------------------
-------- |
|
callback | AsyncCallback
<
Array
<
T
>>
| 是 | 异步获取结果集中的所有文件资产完成后的回调。
|
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
get
Coun
tDemo
'
);
console
.
info
(
'
get
AllObjec
tDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
const
fetchCount
=
fetchResult
.
getCount
();
console
.
info
(
'
fetchCount =
'
,
fetchCount
);
fetchResult
.
getAllObject
((
err
,
fileAssetList
)
=>
{
if
(
fileAssetList
!=
undefined
)
{
console
.
info
(
'
fileAssetList length:
'
,
fileAssetList
.
length
);
}
else
{
console
.
error
(
'
fileAssetList failed with err:
'
+
err
);
}
});
}
```
###
isAfterLast
###
getAllObject<sup>10+</sup>
isAfterLast(): boolean
getAllObject(): Promise
<
Array
<
T
>>
检查结果集是否指向最后一行
。
获取文件检索结果中的所有文件资产。此方法使用promise方式来异步返回
。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**返回值:**
| 类型 | 说明 |
| -------
| --------
-------------------------- |
|
boolean | 当读到最后一条记录后,后续没有记录返回true,否则返回false
。 |
| -------
-------------------------------- |
-------------------------- |
|
Promise
<
Array
<
T
>>
| Promise对象,返回结果集中所有文件资产数组
。 |
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getAllObjectDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
const
fetchCount
=
fetchResult
.
getCount
();
console
.
info
(
'
count:
'
+
fetchCount
);
let
fileAsset
=
await
fetchResult
.
getLastObject
();
if
(
!
fetchResult
.
isAfterLast
())
{
console
.
info
(
'
fileAsset isAfterLast displayName =
'
,
fileAsset
.
displayName
);
}
else
{
console
.
info
(
'
fileAsset not isAfterLast
'
);
}
let
fileAssetList
=
await
fetchResult
.
getAllObject
();
console
.
info
(
'
fileAssetList length:
'
,
fileAssetList
.
length
);
}
```
##
# close
##
Album
close(): void
实体相册
释放 FetchFileResult 实例并使其失效。无法调用其他方法。
### 属性
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**示例**
:
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ------------ | ------ | ---- | ---- | ------- |
| albumType
<sup>
8+
</sup>
|
[
AlbumType
](
#albumtype10
)
| 是 | 否 | 相册类型。 |
| albumSubType
<sup>
8+
</sup>
|
[
AlbumSubType
](
#albumsubtype10
)
| 是 | 否 | 相册子类型。 |
| albumName | string | 是 | 用户相册可写,预置相册不可写 | 相册名称。 |
| albumUri | string | 是 | 否 | 相册Uri。 |
| count | number | 是 | 否 | 相册中文件数量。 |
| coverUri | string | 是 | 用户相册可写,预置相册不可写 | 封面文件Uri。 |
async
function
example
()
{
console
.
info
(
'
fetchResultCloseDemo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
try
{
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
await
fetchResult
.
close
();
console
.
info
(
'
close succeed.
'
);
}
catch
(
err
)
{
console
.
error
(
'
close fail. message =
'
+
err
);
}
}
```
### getPhotoAssets
### getFirstObject
getPhotoAssets(options: FetchOptions, callback: AsyncCallback
<
FetchResult
<
FileAsset
>>
): void;
getFirstObject(callback: AsyncCallback
<
T
>
): void
获取相册中的文件。该方法使用callback形式来返回文件。
获取文件检索结果中的第一个文件资产。此方法使用callback形式返回结果。
**需要权限**
:ohos.permission.READ_IMAGEVIDEO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数
**
:
**参数
:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | --------------------------------------------- | ---- | ------------------------------------------- |
| callback | AsyncCallback
<
T
>
| 是 | 异步获取结果集中的第一个完成后的回调 |
| -------- | ------------------------- | ---- | ---------- |
| options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 检索选项。 |
| callback | AsyncCallback
<
[FetchResult](#fetchresult)
<
[FileAsset](#fileasset)
>>
| 是 | callback返回图片和视频数据结果集。 |
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getFirstObjectDemo
'
);
console
.
info
(
'
albumGetFileAssetsDemoCallback
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
albumFetchOptions
=
{
predicates
:
predicates
};
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
fetchResult
.
getFirstObject
((
err
,
fileAsset
)
=>
{
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
'
fileAsset displayName:
'
,
fileAsset
.
displayName
);
const
albumList
=
await
mgr
.
getPhotoAlbums
(
albumFetchOptions
);
const
album
=
await
albumList
.
getFirstObject
();
album
.
getPhotoAssets
(
fetchOption
,
(
err
,
albumFetchResult
)
=>
{
if
(
albumFetchResult
!=
undefined
)
{
console
.
info
(
'
album getPhotoAssets successfully, getCount:
'
+
albumFetchResult
.
getCount
());
}
else
{
console
.
error
(
"
fileAsset failed with err:
"
+
err
);
console
.
error
(
'
album getPhotoAssets failed with error:
'
+
err
);
}
});
}
```
### get
FirstObject
### get
PhotoAssets
get
FirstObject(): Promise
<
T
>
;
get
PhotoAssets(options: FetchOptions): Promise
<
FetchResult
<
FileAsset
>>
;
获取文件检索结果中的第一个文件资产。此方法使用promise方式来异步返回。
获取相册中的文件。该方法使用Promise来返回文件。
**需要权限**
:ohos.permission.READ_IMAGEVIDEO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 检索选项。 |
**返回值:**
| 类型 | 说明 |
| --------------------------------------- | -----------------
---------
|
| Promise
<
T
>
| Promise方式返回
|
| --------------------------------------- | ----------------- |
| Promise
<
[FetchResult](#fetchresult)
<
[FileAsset](#fileasset)
>>
| Promise对象,返回图片和视频数据结果集。
|
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getFirstObjectDemo
'
);
console
.
info
(
'
albumGetFileAssetsDemoPromise
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
albumFetchOptions
=
{
predicates
:
predicates
};
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
let
fileAsset
=
await
fetchResult
.
getFirstObject
();
console
.
info
(
'
fileAsset displayName:
'
,
fileAsset
.
displayName
);
const
albumList
=
await
mgr
.
getPhotoAlbums
(
albumFetchOptions
);
const
album
=
await
albumList
.
getFirstObject
();
album
.
getPhotoAssets
(
fetchOption
).
then
((
albumFetchResult
)
=>
{
console
.
info
(
'
album getFileAssets successfully, getCount:
'
+
albumFetchResult
.
getCount
());
}).
catch
((
err
)
=>
{
console
.
error
(
'
album getFileAssets failed with error:
'
+
err
);
});
}
```
###
getNextObject
###
commitModify
getNextObject(callback: AsyncCallback
<
T
>
): void
commitModify(callback: AsyncCallback
<
void
>
): void;
获取文件检索结果中的下一个文件资产。此方法使用callback形式返回结果。
更新相册属性修改到数据库中。该方法使用callback形式来返回结果。
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数
**
:
**参数
:**
| 参数名 | 类型 | 必填 | 说明 |
| --------
- | --------------------------------------------- | ---- | -------------------------------
---------- |
| callback
e | AsyncCallback
<
T
>
| 是 | 异步返回结果集中下一个之后的回调
|
| --------
| ------------------------- | ---- |
---------- |
| callback
| AsyncCallback
<
void
>
| 是 | callback返回void。
|
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getNextObject
Demo
'
);
console
.
info
(
'
albumCommitModify
Demo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
let
albumFetchOptions
=
{
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
await
fetchResul
t
.
getFirstObject
();
if
(
fetchResult
.
isAfterLast
())
{
fetchResult
.
getNextObject
((
err
,
fileAsset
)
=>
{
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
'
fileAsset displayName:
'
,
fileAsset
.
displayName
);
const
albumList
=
await
mgr
.
getPhotoAlbums
(
albumFetchOptions
);
const
album
=
await
albumLis
t
.
getFirstObject
();
album
.
albumName
=
'
hello
'
;
album
.
commitModify
((
err
)
=>
{
if
(
err
!=
undefined
)
{
console
.
error
(
'
commitModify failed with error:
'
+
err
);
}
else
{
console
.
error
(
"
fileAsset failed with err:
"
+
err
);
console
.
info
(
'
commitModify successfully
'
);
}
});
}
}
```
###
getNextObject
###
commitModify
getNextObject(): Promise
<
T
>
;
commitModify(): Promise
<
void
>
;
获取文件检索结果中的下一个文件资产。此方法使用promise方式来异步返回。
更新相册属性修改到数据库中。该方法使用Promise来返回结果。
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**返回值:**
| 类型 | 说明 |
| -------------------
-------------------- | -----
------------ |
| Promise
<
T
>
| 返回结果集中下一个对象
|
| -------------------
|
------------ |
| Promise
<
void
>
| Promise对象,返回void。
|
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getNextObject
Demo
'
);
console
.
info
(
'
albumCommitModify
Demo
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
let
albumFetchOptions
=
{
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
await
fetchResult
.
getFirstObject
();
if
(
fetchResult
.
isAfterLast
())
{
let
fileAsset
=
await
fetchResult
.
getNextObject
();
console
.
info
(
'
fileAsset displayName:
'
,
fileAsset
.
displayName
);
try
{
var
albumList
=
await
mgr
.
getPhotoAlbums
(
albumFetchOptions
);
}
catch
(
err
)
{
console
.
error
(
'
getPhotoAlbums failed. message =
'
,
err
);
}
const
album
=
await
albumList
.
getFirstObject
();
album
.
albumName
=
'
hello
'
;
album
.
commitModify
().
then
(()
=>
{
console
.
info
(
'
commitModify successfully
'
);
}).
catch
((
err
)
=>
{
console
.
error
(
'
commitModify failed with error:
'
+
err
);
});
}
```
###
getLastObject
###
addPhotoAssets<sup>10+</sup>
getLastObject(callback: AsyncCallback
<
T
>
): void
addPhotoAssets(assets: Array
<
FileAsset
>
, callback: AsyncCallback
<
void
>
): void;
获取文件检索结果中的最后一个文件资产。此方法使用callback回调来返回。
往相册中添加图片或者视频,需要先预置相册和文件资源。该方法使用callback形式来返回结果。
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数
**
:
**参数
:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | --------------------------------------------- | ---- | --------------------------- |
| callback | AsyncCallback
<
T
>
| 是 | 异步返回结果集中最后一个的回调 |
| -------- | ------------------------- | ---- | ---------- |
| assets | Array
<
[FileAsset](#fileasset)
>
| 是 | 待添加到相册中的图片或视频数组。 |
| callback | AsyncCallback
<
void
>
| 是 | callback返回void。 |
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getLastObjectDemo
'
);
try
{
console
.
info
(
'
addPhotoAssetsDemoCallback
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
albumFetchResult
=
await
mgr
.
getAlbums
(
userFileManager
.
AlbumType
.
USER
,
userFileManager
.
AlbumSubType
.
USER_GENERIC
);
let
album
=
await
albumFetchResult
.
getFirstObject
();
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
fetchResult
.
getLastObject
((
err
,
fileAsset
)
=>
{
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
'
fileAsset displayName:
'
,
fileAsset
.
displayName
);
let
asset
=
await
fetchResult
.
getFirstObject
();
album
.
addPhotoAssets
([
asset
],
(
err
)
=>
{
if
(
err
===
undefined
)
{
console
.
info
(
'
album addPhotoAssets successfully
'
);
}
else
{
console
.
error
(
"
fileAsset failed with err:
"
+
err
);
console
.
error
(
'
album addPhotoAssets failed with error:
'
+
err
);
}
});
}
catch
(
err
)
{
console
.
error
(
'
addPhotoAssetsDemoCallback failed with error:
'
+
err
);
}
}
```
###
getLastObject
###
addPhotoAssets<sup>10+</sup>
getLastObject(): Promise
<
T
>
;
addPhotoAssets(assets: Array
<
FileAsset
>
): Promise
<
void
>
;
获取文件检索结果中的最后一个文件资产。此方法使用Promise方式来返回。
往相册中添加图片或者视频,需要先预置相册和文件资源。该方法使用Promise来返回结果。
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| assets | Array
<
[FileAsset](#fileasset)
>
| 是 | 待添加到相册中的图片或视频数组。 |
**返回值:**
| 类型 | 说明 |
| --------------------------------------- | ----------------- |
|
Promise
<
T
>
| 返回结果集中最后一个对象
|
|
Promise
<
void
>
| Promise对象,返回void。
|
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getLastObjectDemo
'
);
try
{
console
.
info
(
'
addPhotoAssetsDemoPromise
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
albumFetchResult
=
await
mgr
.
getAlbums
(
userFileManager
.
AlbumType
.
USER
,
userFileManager
.
AlbumSubType
.
USER_GENERIC
);
let
album
=
await
albumFetchResult
.
getFirstObject
();
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
let
fileAsset
=
await
fetchResult
.
getLastObject
();
console
.
info
(
'
fileAsset displayName:
'
,
fileAsset
.
displayName
);
let
asset
=
await
fetchResult
.
getFirstObject
();
album
.
addPhotoAssets
([
asset
]).
then
(()
=>
{
console
.
info
(
'
album addPhotoAssets successfully
'
);
}).
catch
((
err
)
=>
{
console
.
error
(
'
album addPhotoAssets failed with error:
'
+
err
);
});
}
catch
(
err
)
{
console
.
error
(
'
addPhotoAssetsDemoPromise failed with error:
'
+
err
);
}
}
```
###
getPositionObject
###
removePhotoAssets<sup>10+</sup>
getPositionObject(index: number, callback: AsyncCallback
<
T
>
): void
removePhotoAssets(assets: Array
<
FileAsset
>
, callback: AsyncCallback
<
void
>
): void;
获取文件检索结果中具有指定索引的文件资产。此方法使用callback来返回。
从相册中移除图片或者视频,需要先预置相册和文件资源。该方法使用callback形式来返回结果。
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数
**
:
**参数
:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------------------------
--------------- | ---- | --------
---------- |
|
index | number | 是 | 要获取的文件的索引,从0开始
|
| callback | AsyncCallback
<
T
>
| 是 | 异步返回指定索引的文件资产的回调
|
| -------- | -------------------------
| ---- |
---------- |
|
assets | Array
<
[FileAsset](#fileasset)
>
| 是 | 相册中待移除的图片或视频数组。
|
| callback | AsyncCallback
<
void
>
| 是 | callback返回void。
|
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getPositionObjectDemo
'
);
try
{
console
.
info
(
'
removePhotoAssetsDemoCallback
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
fetchResult
.
getPositionObject
(
0
,
(
err
,
fileAsset
)
=>
{
if
(
fileAsset
!=
undefined
)
{
console
.
info
(
'
fileAsset displayName:
'
,
fileAsset
.
displayName
);
let
albumFetchResult
=
await
mgr
.
getAlbums
(
userFileManager
.
AlbumType
.
USER
,
userFileManager
.
AlbumSubType
.
USER_GENERIC
);
let
album
=
await
albumFetchResult
.
getFirstObject
();
let
fetchResult
=
await
album
.
getPhotoAssets
(
fetchOption
);
let
asset
=
await
fetchResult
.
getFirstObject
();
album
.
removePhotoAssets
([
asset
],
(
err
)
=>
{
if
(
err
===
undefined
)
{
console
.
info
(
'
album removePhotoAssets successfully
'
);
}
else
{
console
.
error
(
"
fileAsset failed with err:
"
+
err
);
console
.
error
(
'
album removePhotoAssets failed with error:
'
+
err
);
}
});
}
catch
(
err
)
{
console
.
error
(
'
removePhotoAssetsDemoCallback failed with error:
'
+
err
);
}
}
```
###
getPositionObject
###
removePhotoAssets<sup>10+</sup>
getPositionObject(index: number): Promise
<
T
>
;
removePhotoAssets(assets: Array
<
FileAsset
>
): Promise
<
void
>
;
获取文件检索结果中具有指定索引的文件资产。此方法使用Promise形式返回文件Asset。
从相册中移除图片或者视频,需要先预置相册和文件资源。该方法使用Promise来返回结果。
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数
**
:
**参数
:**
| 参数名 | 类型 | 必填 | 说明 |
| -----
| ------ | ---- | ----
---------- |
|
index | number | 是 | 要获取的文件的索引,从0开始
|
| -----
--- | ------------------------- | ---- |
---------- |
|
assets | Array
<
[FileAsset](#fileasset)
>
| 是 | 相册中待移除的图片或视频数组。
|
**返回值:**
| 类型 | 说明 |
| --------------------------------------- | ----------------- |
|
Promise
<
T
>
| 返回指定索引的文件资产的对象
|
|
Promise
<
void
>
| Promise对象,返回void。
|
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
getPositionObjectDemo
'
);
try
{
console
.
info
(
'
removePhotoAssetsDemoPromise
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
let
fetchResult
=
await
mgr
.
getPhotoAssets
(
fetchOption
);
let
fileAsset
=
await
fetchResult
.
getPositionObject
(
0
);
console
.
info
(
'
fileAsset displayName:
'
,
fileAsset
.
displayName
);
let
albumFetchResult
=
await
mgr
.
getAlbums
(
userFileManager
.
AlbumType
.
USER
,
userFileManager
.
AlbumSubType
.
USER_GENERIC
);
let
album
=
await
albumFetchResult
.
getFirstObject
();
let
fetchResult
=
await
album
.
getPhotoAssets
(
fetchOption
);
let
asset
=
await
fetchResult
.
getFirstObject
();
album
.
removePhotoAssets
([
asset
]).
then
(()
=>
{
console
.
info
(
'
album removePhotoAssets successfully
'
);
}).
catch
((
err
)
=>
{
console
.
error
(
'
album removePhotoAssets failed with error:
'
+
err
);
});
}
catch
(
err
)
{
console
.
error
(
'
removePhotoAssetsDemoPromise failed with error:
'
+
err
);
}
}
```
## Album
实体相册
### 属性
**系统能力:**
以下各项对应的系统能力均为SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ------------ | ------ | ---- | ---- | ------- |
| albumName | string | 是 | 是 | 相册名称 |
| albumUri | string | 是 | 否 | 相册Uri |
| dateModified | number | 是 | 否 | 修改日期 |
| count | number | 是 | 否 | 相册中文件数量 |
| coverUri | string | 是 | 否 | 封面文件Uri
### getPhotoAssets
### recoverPhotoAssets<sup>10+</sup>
getPhotoAssets(options: FetchOptions, callback: AsyncCallback
<
FetchResult
<
FileAsset
>
>
): void;
recoverPhotoAssets(assets: Array
<
FileAsset
>
, callback: AsyncCallback
<
void
>
): void;
获取相册中的文件。该方法使用callback形式来返回文件
。
从回收站中恢复图片或者视频,需要先在回收站中预置文件资源。该方法使用callback形式来返回结果
。
**需要权限**
:ohos.permission.
READ
_IMAGEVIDEO
**需要权限**
:ohos.permission.
WRITE
_IMAGEVIDEO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数
**
:
**参数
:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
|
options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 检索选项
|
| callback | AsyncCallback
<
[FetchResult](#fetchresult)
<
[FileAsset](#fileasset)
>>
| 是 | callback 返回图片和视频数据结果集
|
|
assets | Array
<
[FileAsset](#fileasset)
>
| 是 | 回收站中待恢复图片或者视频数组。
|
| callback | AsyncCallback
<
void
>
| 是 | callback返回void。
|
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
albumGetFileAssetsDemoCallback
'
);
try
{
console
.
info
(
'
recoverPhotoAssetsDemoCallback
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
albumFetchOptions
=
{
predicates
:
predicates
};
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
const
albumList
=
await
mgr
.
getPhotoAlbums
(
albumFetchOptions
);
const
album
=
await
albumList
.
getFirstObject
();
album
.
getPhotoAssets
(
fetchOption
,
(
err
,
albumFetchResult
)
=>
{
if
(
albumFetchResult
!=
undefined
)
{
console
.
info
(
"
album getPhotoAssets successfully, getCount:
"
+
albumFetchResult
.
getCount
());
let
albumFetchResult
=
await
mgr
.
getAlbums
(
userFileManager
.
AlbumType
.
SYSTEM
,
userFileManager
.
AlbumSubType
.
TRASH
);
let
album
=
await
albumFetchResult
.
getFirstObject
();
let
fetchResult
=
await
album
.
getPhotoAssets
(
fetchOption
);
let
asset
=
await
fetchResult
.
getFirstObject
();
album
.
recoverPhotoAssets
([
asset
],
(
err
)
=>
{
if
(
err
===
undefined
)
{
console
.
info
(
'
album recoverPhotoAssets successfully
'
);
}
else
{
console
.
error
(
"
album getPhotoAssets failed with error:
"
+
err
);
console
.
error
(
'
album recoverPhotoAssets failed with error:
'
+
err
);
}
});
}
catch
(
err
)
{
console
.
error
(
'
recoverPhotoAssetsDemoCallback failed with error:
'
+
err
);
}
}
```
###
getPhotoAssets
###
recoverPhotoAssets<sup>10+</sup>
getPhotoAssets(options: FetchOptions): Promise
<
FetchResult
<
FileAsset
>
>
;
recoverPhotoAssets(assets: Array
<
FileAsset
>
): Promise
<
void
>
;
获取相册中的文件。该方法使用Promise来返回文件
。
从回收站中恢复图片或者视频,需要先在回收站中预置文件资源。该方法使用Promise来返回结果
。
**需要权限**
:ohos.permission.
READ
_IMAGEVIDEO
**需要权限**
:ohos.permission.
WRITE
_IMAGEVIDEO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数
**
:
**参数
:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 检索选项 |
| Promise |
[
FetchResult
](
#fetchresult
)
<
[FileAsset](#fileasset)
>
| 是 | 图片和视频数据结果集 |
| assets | Array
<
[FileAsset](#fileasset)
>
| 是 | 回收站中待恢复图片或者视频数组。 |
**返回值:**
| 类型 | 说明 |
| --------------------------------------- | ----------------- |
|Promise
<
void
>
| Promise对象,返回void。 |
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
albumGetFileAssetsDemoPromise
'
);
try
{
console
.
info
(
'
recoverPhotoAssetsDemoPromise
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
albumFetchOptions
=
{
predicates
:
predicates
};
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
const
albumList
=
await
mgr
.
getPhotoAlbums
(
albumFetchOptions
);
const
album
=
await
albumList
.
getFirstObject
();
album
.
getPhotoAssets
(
fetchOption
).
then
((
albumFetchResult
)
=>
{
console
.
info
(
"
album getFileAssets successfully, getCount:
"
+
albumFetchResult
.
getCount
());
let
albumFetchResult
=
await
mgr
.
getAlbums
(
userFileManager
.
AlbumType
.
SYSTEM
,
userFileManager
.
AlbumSubType
.
TRASH
);
let
album
=
await
albumFetchResult
.
getFirstObject
();
let
fetchResult
=
await
album
.
getPhotoAssets
(
fetchOption
);
let
asset
=
await
fetchResult
.
getFirstObject
();
album
.
recoverPhotoAssets
([
asset
]).
then
(()
=>
{
console
.
info
(
'
album recoverPhotoAssets successfully
'
);
}).
catch
((
err
)
=>
{
console
.
error
(
"
album getFileAssets failed with error:
"
+
err
);
console
.
error
(
'
album recoverPhotoAssets failed with error:
'
+
err
);
});
}
catch
(
err
)
{
console
.
error
(
'
recoverPhotoAssetsDemoPromise failed with error:
'
+
err
);
}
}
```
###
commitModify
###
deletePhotoAssets<sup>10+</sup>
commitModify(callback: AsyncCallback
<
void
>
): void;
deletePhotoAssets(assets: Array
<
FileAsset
>
, callback: AsyncCallback
<
void
>
): void;
从回收站中彻底删除图片或者视频,需要先在回收站中预置文件资源。该方法使用callback形式来返回结果。
更新相册属性修改到数据库中
。
**注意**
:此操作不可逆,执行此操作后文件资源将彻底删除,请谨慎操作
。
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数
**
:
**参数
:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| callback | AsyncCallback
<
void
>
| 是 | 回调返回空 |
| assets | Array
<
[FileAsset](#fileasset)
>
| 是 | 回收站中待彻底删除图片或者视频数组。 |
| callback | AsyncCallback
<
void
>
| 是 | callback返回void。 |
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
albumCommitModifyDemo
'
);
try
{
console
.
info
(
'
deletePhotoAssetsDemoCallback
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
albumFetchOptions
=
{
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
const
albumList
=
await
mgr
.
getPhotoAlbums
(
albumFetchOptions
);
const
album
=
await
albumList
.
getFirstObject
();
album
.
albumName
=
'
hello
'
;
album
.
commitModify
((
err
)
=>
{
if
(
err
!=
undefined
)
{
console
.
error
(
"
commitModify failed with error:
"
+
err
);
let
albumFetchResult
=
await
mgr
.
getAlbums
(
userFileManager
.
AlbumType
.
SYSTEM
,
userFileManager
.
AlbumSubType
.
TRASH
);
let
album
=
await
albumFetchResult
.
getFirstObject
();
let
fetchResult
=
await
album
.
getPhotoAssets
(
fetchOption
);
let
asset
=
await
fetchResult
.
getFirstObject
();
album
.
deletePhotoAssets
([
asset
],
(
err
)
=>
{
if
(
err
===
undefined
)
{
console
.
info
(
'
album deletePhotoAssets successfully
'
);
}
else
{
console
.
info
(
"
commitModify successfully
"
);
console
.
error
(
'
album deletePhotoAssets failed with error:
'
+
err
);
}
});
}
catch
(
err
)
{
console
.
error
(
'
deletePhotoAssetsDemoCallback failed with error:
'
+
err
);
}
}
```
###
commitModify
###
deletePhotoAssets<sup>10+</sup>
commitModify(
): Promise
<
void
>
;
deletePhotoAssets(assets: Array
<
FileAsset
>
): Promise
<
void
>
;
更新相册属性修改到数据库中。
从回收站中彻底删除图片或者视频,需要先在回收站中预置文件资源。该方法使用Promise来返回结果。
**注意**
:此操作不可逆,执行此操作后文件资源将彻底删除,请谨慎操作。
**需要权限**
:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| assets | Array
<
[FileAsset](#fileasset)
>
| 是 | 回收站中待彻底删除图片或者视频数组。 |
**返回值:**
| 类型 | 说明 |
| -------------------
|
------------ |
|
Promise
<
void
>
| Promise调用返回空
|
| -------------------
-------------------- | -----
------------ |
|
Promise
<
void
>
| Promise对象,返回void。
|
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
async
function
example
()
{
console
.
info
(
'
albumCommitModifyDemo
'
);
try
{
console
.
info
(
'
deletePhotoAssetsDemoPromise
'
);
let
predicates
=
new
dataSharePredicates
.
DataSharePredicates
();
let
albumFetchOptions
=
{
let
fetchOption
=
{
fetchColumns
:
[],
predicates
:
predicates
};
try
{
var
albumList
=
await
mgr
.
getPhotoAlbums
(
albumFetchOptions
);
}
catch
(
err
)
{
console
.
error
(
'
getPhotoAlbums failed. message =
'
,
err
);
}
const
album
=
await
albumList
.
getFirstObject
();
album
.
albumName
=
'
hello
'
;
album
.
commitModify
().
then
(()
=>
{
console
.
info
(
"
commitModify successfully
"
);
let
albumFetchResult
=
await
mgr
.
getAlbums
(
userFileManager
.
AlbumType
.
SYSTEM
,
userFileManager
.
AlbumSubType
.
TRASH
);
let
album
=
await
albumFetchResult
.
getFirstObject
();
let
fetchResult
=
await
album
.
getPhotoAssets
(
fetchOption
);
let
asset
=
await
fetchResult
.
getFirstObject
();
album
.
deletePhotoAssets
([
asset
]).
then
(()
=>
{
console
.
info
(
'
album deletePhotoAssets successfully
'
);
}).
catch
((
err
)
=>
{
console
.
error
(
"
commitModify failed with error:
"
+
err
);
console
.
error
(
'
album deletePhotoAssets failed with error:
'
+
err
);
});
}
catch
(
err
)
{
console
.
error
(
'
deletePhotoAssetsDemoPromise failed with error:
'
+
err
);
}
}
```
...
...
@@ -2049,15 +3074,15 @@ async function example() {
### 属性
**系统能力
:**
以下各项对应的系统能力均为
SystemCapability.FileManagement.UserFileManager.Core
**系统能力
**
:
SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ------------ | ------ | ---- | ---- | ------- |
| albumName | string | 是 | 是 | 相册名称 |
| albumUri | string | 是 | 否 | 相册Uri |
| dateModified | number | 是 | 否 | 修改日期 |
| count | number | 是 | 否 | 相册中文件数量 |
| coverUri | string | 是 | 否 | 封面文件Uri
| albumName | string | 是 | 是 | 相册名称
。
|
| albumUri | string | 是 | 否 | 相册Uri
。
|
| dateModified | number | 是 | 否 | 修改日期
。
|
| count | number | 是 | 否 | 相册中文件数量
。
|
| coverUri | string | 是 | 否 | 封面文件Uri
。 |
### getPhotoAssets
...
...
@@ -2069,14 +3094,14 @@ getPhotoAssets(options: FetchOptions, callback: AsyncCallback<FetchResult<
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数
**
:
**参数
:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 检索选项 |
| callback | AsyncCallback
<
[FetchResult](#fetchresult)
<
[FileAsset](#fileasset)
>>
| 是 | callback返回图片和视频数据结果集 |
| options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 检索选项
。
|
| callback | AsyncCallback
<
[FetchResult](#fetchresult)
<
[FileAsset](#fileasset)
>>
| 是 | callback返回图片和视频数据结果集
。
|
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
...
...
@@ -2112,19 +3137,19 @@ getPhotoAssets(options: FetchOptions): Promise<FetchResult<FileAsset>&g
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数
**
:
**参数
:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 检索选项 |
| options |
[
FetchOptions
](
#fetchoptions
)
| 是 | 检索选项
。
|
**返回值:**
| 类型 | 说明 |
| --------------------------------------- | ----------------- |
| Promise:
[
FetchResult
](
#fetchresult
)
<
[FileAsset](#fileasset)
>
|
图片和视频数据结果集
|
| Promise:
[
FetchResult
](
#fetchresult
)
<
[FileAsset](#fileasset)
>
|
Promise对象,返回图片和视频数据结果集。
|
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
...
...
@@ -2154,14 +3179,14 @@ delete(uri: string, callback: AsyncCallback<void>): void;
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数
**
:
**参数
:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| uri | string | 是 | 相册uri |
| callback | AsyncCallback
<
void
>
| 是 |
回调返回空
|
| uri | string | 是 | 相册uri
。
|
| callback | AsyncCallback
<
void
>
| 是 |
callback返回void。
|
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
...
...
@@ -2198,19 +3223,19 @@ delete(uri: string): Promise<void>;
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数
**
:
**参数
:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| uri | string | 是 | 相册uri |
| uri | string | 是 | 相册uri
。
|
**返回值:**
| 类型 | 说明 |
| --------------------------------------- | ----------------- |
| Promise
<
void
>
|
回调返回空
|
| Promise
<
void
>
|
Promise对象,返回void。
|
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
...
...
@@ -2245,14 +3270,14 @@ recover(uri: string, callback: AsyncCallback<void>): void;
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数
**
:
**参数
:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| uri | string | 是 | 相册uri |
| callback | AsyncCallback
<
void
>
| 是 |
回调返回空
|
| uri | string | 是 | 相册uri
。
|
| callback | AsyncCallback
<
void
>
| 是 |
callback返回void。
|
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
...
...
@@ -2289,19 +3314,19 @@ recover(uri: string): Promise<void>;
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
**参数
**
:
**参数
:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| uri | string | 是 | 相册uri |
| uri | string | 是 | 相册uri
。
|
**返回值:**
| 类型 | 说明 |
| --------------------------------------- | ----------------- |
| Promise
<
void
>
|
回调返回空
|
| Promise
<
void
>
|
Promise对象,返回void。
|
**示例
**
:
**示例
:**
```
ts
import
dataSharePredicates
from
'
@ohos.data.dataSharePredicates
'
;
...
...
@@ -2330,134 +3355,199 @@ async function example() {
成员类型。
**系统能力
:**
以下各项对应的系统能力均为
SystemCapability.FileManagement.UserFileManager.Core
**系统能力
**
:
SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ----- | ---- | ---- | ---- | ---- |
| number | number | 是 | 是 | number类型 |
| string | string | 是 | 是 | string类型
|
| boolean | boolean | 是 | 是 | boolean类型 |
| number | number | 是 | 是 | number类型
。
|
| string | string | 是 | 是 | string类型
。
|
| boolean | boolean | 是 | 是 | boolean类型
。
|
## ChangeEvent
变更监听的媒体文件类型。
**系统能力
:**
以下各项对应的系统能力均为
SystemCapability.FileManagement.UserFileManager.Core
**系统能力
**
:
SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ----- | ---- | ---- | ---- | ---- |
| deviceChange | string | 是 | 是 | 设备 |
| albumChange | string | 是 | 是 | 相册 |
| imageChange | string | 是 | 是 | 图片 |
| audioChange | string | 是 | 是 | 音频 |
| videoChange | string | 是 | 是 | 视频 |
| remoteFileChange | string | 是 | 是 | 远程文件 |
| deviceChange | string | 是 | 是 | 设备
。
|
| albumChange | string | 是 | 是 | 相册
。
|
| imageChange | string | 是 | 是 | 图片
。
|
| audioChange | string | 是 | 是 | 音频
。
|
| videoChange | string | 是 | 是 | 视频
。
|
| remoteFileChange | string | 是 | 是 | 远程文件
。
|
## PeerInfo
注册设备的信息。
**系统能力
:**
以下各项对应的系统能力均为
SystemCapability.FileManagement.UserFileManager.DistributedCore
**系统能力
**
:
SystemCapability.FileManagement.UserFileManager.DistributedCore
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ---------- | -------------------------- | ---- | ---- | ---------------- |
| deviceName | string | 是 | 否 | 注册设备的名称 |
| networkId | string | 是 | 否 | 注册设备的网络ID |
| isOnline | boolean | 是 | 否 | 是否在线 |
| deviceName | string | 是 | 否 | 注册设备的名称
。
|
| networkId | string | 是 | 否 | 注册设备的网络ID
。
|
| isOnline | boolean | 是 | 否 | 是否在线
。
|
## FileType
枚举,媒体文件类型。
**系统能力:**
以下各项对应的系统能力均为SystemCapability.FileManagement.UserFileManager.Core
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 值 | 说明 |
| ----- | ---- | ---- |
| IMAGE | 1 | 图片。 |
| VIDEO | 2 | 视频。 |
| AUDIO | 3 | 音频。 |
## PhotoSubType<sup>10+</sup>
枚举,不同
[
FileAsset
](
#fileasset
)
的类型。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 值 | 说明 |
| ----- | ---- | ---- |
| DEFAULT | 0 | 默认照片类型。 |
| SCREENSHOT | 1 | 截屏录屏文件类型。 |
| CAMERA | 2 | 相机拍摄的照片和视频类型。 |
## PositionType<sup>10+</sup>
枚举,文件位置,表示文件在本地或云端。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 值 | 说明 |
| ----- | ---- | ---- |
| LOCAL | 1 | 文件只存在于本端设备。 |
| CLOUD | 2 | 文件只存在于云端。 |
| BOTH | 3 | 文件在本地和云中都存在。 |
## AlbumType<sup>10+</sup>
枚举,相册类型,表示是用户相册还是系统预置相册。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 值 | 说明 |
| ----- | ---- | ---- |
| USER | 0 | 用户相册。 |
| SYSTEM | 1024 | 系统预置相册。 |
## AlbumSubType<sup>10+</sup>
枚举,相册子类型,表示具体的相册类型。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 值 | 说明 |
| ----- | ---- | ---- |
| IMAGE | 1 | 图片 |
| VIDEO | 2 | 视频 |
| AUDIO | 3 | 音频 |
| USER_GENERIC | 1 | 用户相册。 |
| FAVORITE | 1025 | 收藏夹。 |
| VIDEO | 1026 | 视频相册。 |
| HIDDEN | 1027 | 隐藏相册。 |
| TRASH | 1028 | 回收站。 |
| SCREENSHOT | 1029 | 截屏和录屏相册。 |
| CAMERA | 1030 | 相机拍摄的照片和视频相册。 |
| ANY | 2147483647 | 任意相册。 |
## PrivateAlbumType
枚举,系统相册类型。
**系统能力
:**
以下各项对应的系统能力均为
SystemCapability.FileManagement.UserFileManager.Core
**系统能力
**
:
SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 值 | 说明 |
| ----- | ---- | ---- |
| TYPE_FAVORITE | 0 | 收藏夹相册 |
| TYPE_TRASH | 1 | 回收站相册 |
| TYPE_FAVORITE | 0 | 收藏夹相册
。
|
| TYPE_TRASH | 1 | 回收站相册
。
|
## AudioKey
枚举,音频文件关键信息。
**系统能力
:**
以下各项对应的系统能力均为
SystemCapability.FileManagement.UserFileManager.Core
**系统能力
**
:
SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 值 | 说明 |
| ------------- | ------------------- | ---------------------------------------------------------- |
| URI | uri | 文件uri |
| DISPLAY_NAME | display_name | 显示名字 |
| DATE_ADDED | date_added | 添加日期(添加文件时间
到1970年1月1日的秒数值)
|
| DATE_MODIFIED | date_modified | 修改日期(修改文件时间
到1970年1月1日的秒数值,修改文件名不会改变此值,当文件内容发生修改时才会更新)
|
| TITLE | title | 文件标题 |
| ARTIST | artist | 作者 |
| AUDIOALBUM | audio_album | 专辑 |
| DURATION | duration | 持续时间(单位:毫秒) |
| FAVORITE | favorite | 收藏 |
| URI | uri | 文件uri
。
|
| DISPLAY_NAME | display_name | 显示名字
。
|
| DATE_ADDED | date_added | 添加日期(添加文件时间
距1970年1月1日的秒数值)。
|
| DATE_MODIFIED | date_modified | 修改日期(修改文件时间
距1970年1月1日的秒数值,修改文件名不会改变此值,当文件内容发生修改时才会更新)。
|
| TITLE | title | 文件标题
。
|
| ARTIST | artist | 作者
。
|
| AUDIOALBUM | audio_album | 专辑
。
|
| DURATION | duration | 持续时间(单位:毫秒)
。
|
| FAVORITE | favorite | 收藏
。
|
## ImageVideoKey
枚举,图片和视频文件关键信息。
**系统能力
:**
以下各项对应的系统能力均为
SystemCapability.FileManagement.UserFileManager.Core
**系统能力
**
:
SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 值 | 说明 |
| ------------- | ------------------- | ---------------------------------------------------------- |
| URI | uri | 文件uri |
| FILE_TYPE | file_type | 媒体文件类型 |
| DISPLAY_NAME | display_name | 显示名字 |
| DATE_ADDED | date_added | 添加日期(添加文件时间到1970年1月1日的秒数值) |
| DATE_MODIFIED | date_modified | 修改日期(修改文件时间到1970年1月1日的秒数值,修改文件名不会改变此值,当文件内容发生修改时才会更新) |
| TITLE | title | 文件标题 |
| DURATION | duration | 持续时间(单位:毫秒) |
| WIDTH | width | 图片宽度(单位:像素) |
| HEIGHT | height | 图片高度(单位:像素) |
| DATE_TAKEN | date_taken | 拍摄日期(文件拍照时间到1970年1月1日的秒数值) |
| ORIENTATION | orientation | 图片文件的方向 |
| FAVORITE | favorite | 收藏 |
| URI | uri | 文件uri。 |
| FILE_TYPE | file_type | 媒体文件类型。 |
| DISPLAY_NAME | display_name | 显示名字。 |
| DATE_ADDED | date_added | 添加日期(添加文件时间距1970年1月1日的秒数值)。 |
| DATE_MODIFIED | date_modified | 修改日期(修改文件时间距1970年1月1日的秒数值,修改文件名不会改变此值,当文件内容发生修改时才会更新)。 |
| TITLE | title | 文件标题。 |
| DURATION | duration | 持续时间(单位:毫秒)。 |
| WIDTH | width | 图片宽度(单位:像素)。 |
| HEIGHT | height | 图片高度(单位:像素)。 |
| DATE_TAKEN | date_taken | 拍摄日期(文件拍照时间距1970年1月1日的秒数值)。 |
| ORIENTATION | orientation | 图片文件的方向。 |
| FAVORITE | favorite | 收藏。 |
| POSITION
<sup>
10+
</sup>
| position | 文件位置类型。 |
| DATE_TRASHED
<sup>
10+
</sup>
| date_trashed | 删除日期(删除文件时间距1970年1月1日的秒数值)。 |
| HIDDEN
<sup>
10+
</sup>
| hidden | 文件的隐藏状态。 |
## AlbumKey
枚举,相册关键信息。
**系统能力
:**
以下各项对应的系统能力均为
SystemCapability.FileManagement.UserFileManager.Core
**系统能力
**
:
SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 值 | 说明 |
| ------------- | ------------------- | ---------------------------------------------------------- |
| URI | uri | 相册uri |
| FILE_TYPE | file_type | 媒体文件类型 |
| ALBUM_NAME | album_name | 相册名字 |
| DATE_ADDED | date_added | 添加日期(添加文件时间到1970年1月1日的秒数值) |
| DATE_MODIFIED | date_modified | 修改日期(修改文件时间到1970年1月1日的秒数值,修改文件名不会改变此值,当文件内容发生修改时才会更新) |
| URI | uri | 相册uri。 |
| FILE_TYPE | file_type | 媒体文件类型。 |
| ALBUM_NAME | album_name | 相册名字。 |
| DATE_ADDED | date_added | 添加日期(添加文件时间距1970年1月1日的秒数值)。 |
| DATE_MODIFIED | date_modified | 修改日期(修改文件时间距1970年1月1日的秒数值,修改文件名不会改变此值,当文件内容发生修改时才会更新)。 |
## PhotoCreateOptions<sup>10+</sup>
图片或视频的创建选项。
**系统能力**
:SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 必填 | 说明 |
| ---------------------- | ------------------- | ---- | ------------------------------------------------ |
| subType |
[
PhotoSubType
](
#photosubtype10
)
| 否 | 图片或者视频的子类型。 |
## FetchOptions
检索条件。
**系统能力
:**
以下各项对应的系统能力均为
SystemCapability.FileManagement.UserFileManager.Core
**系统能力
**
:
SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ---------------------- | ------------------- | ---- |---- | ------------------------------------------------ |
| fetchColumns | Array
<
string
>
| 是 | 是 | 检索条件,指定列名查询,如果该参数为空时默认查询uri、name、fileType
。示例:
<br
/>
fetchColumns: "uri"
|
| predicates |
[
dataSharePredicates.DataSharePredicates
](
js-apis-data-dataSharePredicates.md
)
| 是 | 是 | 谓词查询,显示过滤条件 |
| fetchColumns | Array
<
string
>
| 是 | 是 | 检索条件,指定列名查询,如果该参数为空时默认查询uri、name、fileType
(具体字段名称以检索对象定义为准)。示例:
<br
/>
fetchColumns: ['uri', 'title']。
|
| predicates |
[
dataSharePredicates.DataSharePredicates
](
js-apis-data-dataSharePredicates.md
)
| 是 | 是 | 谓词查询,显示过滤条件
。
|
## AlbumFetchOptions
相册检索条件。
**系统能力
:**
以下各项对应的系统能力均为
SystemCapability.FileManagement.UserFileManager.Core
**系统能力
**
:
SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ---------------------- | ------------------- | ---- |---- | ------------------------------------------------ |
| predicates |
[
dataSharePredicates.DataSharePredicates
](
js-apis-data-dataSharePredicates.md
)
| 是 | 是 | 谓词查询,显示过滤条件 |
| predicates |
[
dataSharePredicates.DataSharePredicates
](
js-apis-data-dataSharePredicates.md
)
| 是 | 是 | 谓词查询,显示过滤条件
。
|
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录