提交 fb7edf63 编写于 作者: H huweiqi 提交者: 胡伟奇

fixed 16332277 from https://gitee.com/weiqi-hu/docs/pulls/17268

add ufm api 10
Signed-off-by: Nhuweiqi <huweiqi1@huawei.com>
Change-Id: I3196087433feb027c5f3c2bfa176325c6085ae3b
上级 ef95e5c1
...@@ -19,7 +19,7 @@ getUserFileMgr(context: Context): UserFileManager ...@@ -19,7 +19,7 @@ getUserFileMgr(context: Context): UserFileManager
获取用户数据管理模块的实例,用于访问和修改用户等用户公共媒体数据信息(如音频、视频、图片、文档等)。 获取用户数据管理模块的实例,用于访问和修改用户等用户公共媒体数据信息(如音频、视频、图片、文档等)。
**模型约束:** 此接口仅可在Stage模型下使用。 **模型约束** 此接口仅可在Stage模型下使用。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
...@@ -27,13 +27,13 @@ getUserFileMgr(context: Context): UserFileManager ...@@ -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&lt;FetchResult&lt; ...@@ -59,8 +59,8 @@ getPhotoAssets(options: FetchOptions, callback: AsyncCallback&lt;FetchResult&lt;
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- | | -------- | ------------------------ | ---- | ------------------------- |
| options | [FetchOptions](#fetchoptions) | 是 | 图片和视频检索选项 | | options | [FetchOptions](#fetchoptions) | 是 | 图片和视频检索选项 |
| callback | AsyncCallback&lt;[FetchResult](#fetchresult)&lt;[FileAsset](#fileasset)&gt;&gt; | 是 | callback 返回图片和视频检索结果集 | | callback | AsyncCallback&lt;[FetchResult](#fetchresult)&lt;[FileAsset](#fileasset)&gt;&gt; | 是 | callback返回图片和视频检索结果集。 |
**示例:** **示例:**
...@@ -80,7 +80,7 @@ async function example() { ...@@ -80,7 +80,7 @@ async function example() {
console.info('fetchResult success'); console.info('fetchResult success');
let fileAsset = await fetchResult.getFirstObject(); let fileAsset = await fetchResult.getFirstObject();
if (fileAsset != undefined) { if (fileAsset != undefined) {
console.info("fileAsset.displayName : " + fileAsset.displayName); console.info('fileAsset.displayName : ' + fileAsset.displayName);
} }
} else { } else {
console.error('fetchResult fail' + err); console.error('fetchResult fail' + err);
...@@ -103,13 +103,13 @@ getPhotoAssets(options: FetchOptions): Promise&lt;FetchResult&lt;FileAsset&gt;&g ...@@ -103,13 +103,13 @@ getPhotoAssets(options: FetchOptions): Promise&lt;FetchResult&lt;FileAsset&gt;&g
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| ------- | ------------------- | ---- | ---------------- | | ------- | ------------------- | ---- | ---------------- |
| options | [FetchOptions](#fetchoptions) | 是 | 图片和视频检索选项 | | options | [FetchOptions](#fetchoptions) | 是 | 图片和视频检索选项 |
**返回值:** **返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| --------------------------- | -------------- | | --------------------------- | -------------- |
| Promise&lt;[FetchResult](#fetchresult)&lt;[FileAsset](#fileasset)&gt;&gt; | 图片和视频数据结果集 | | Promise&lt;[FetchResult](#fetchresult)&lt;[FileAsset](#fileasset)&gt;&gt; | Promise对象,返回图片和视频数据结果集。 |
**示例:** **示例:**
...@@ -129,7 +129,7 @@ async function example() { ...@@ -129,7 +129,7 @@ async function example() {
console.info('fetchResult success'); console.info('fetchResult success');
let fileAsset = await fetchResult.getFirstObject(); let fileAsset = await fetchResult.getFirstObject();
if (fileAsset != undefined) { if (fileAsset != undefined) {
console.info("fileAsset.displayName :" + fileAsset.displayName); console.info('fileAsset.displayName :' + fileAsset.displayName);
} }
} }
} catch (err) { } catch (err) {
...@@ -137,12 +137,11 @@ async function example() { ...@@ -137,12 +137,11 @@ async function example() {
} }
} }
``` ```
### createPhotoAsset ### createPhotoAsset
createPhotoAsset(displayName: string, albumUri: string, callback: AsyncCallback&lt;FileAsset&gt;): void; createPhotoAsset(displayName: string, albumUri: string, callback: AsyncCallback&lt;FileAsset&gt;): void;
创建图片或视频资源,使用callback方式返回结果。 指定待创建的图片或者视频的文件名和所在相册的uri,创建图片或视频资源,使用callback方式返回结果。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
...@@ -152,9 +151,9 @@ createPhotoAsset(displayName: string, albumUri: string, callback: AsyncCallback& ...@@ -152,9 +151,9 @@ createPhotoAsset(displayName: string, albumUri: string, callback: AsyncCallback&
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- | | -------- | ------------------------ | ---- | ------------------------- |
| displayName | string | 是 | 创建的图片或者视频文件名 | | displayName | string | 是 | 创建的图片或者视频文件名 |
| albumUri | string | 是 | 创建的图片或者视频所在相册的uri | | albumUri | string | 是 | 创建的图片或者视频所在相册的uri |
| callback | AsyncCallback&lt;[FileAsset](#fileasset)&gt; | 是 | callback 返回创建的图片和视频结果 | | callback | AsyncCallback&lt;[FileAsset](#fileasset)&gt; | 是 | callback返回创建的图片和视频结果。 |
**示例:** **示例:**
...@@ -169,7 +168,7 @@ async function example() { ...@@ -169,7 +168,7 @@ async function example() {
}; };
let albums = await mgr.getPhotoAlbums(fetchOptions); let albums = await mgr.getPhotoAlbums(fetchOptions);
let album = await albums.getFirstObject(); let album = await albums.getFirstObject();
let testFileName = "testFile" + Date.now() + ".jpg"; let testFileName = 'testFile' + Date.now() + '.jpg';
mgr.createPhotoAsset(testFileName, album.albumUri, (err, fileAsset) => { mgr.createPhotoAsset(testFileName, album.albumUri, (err, fileAsset) => {
if (fileAsset != undefined) { if (fileAsset != undefined) {
console.info('createPhotoAsset file displayName' + fileAsset.displayName); console.info('createPhotoAsset file displayName' + fileAsset.displayName);
...@@ -185,7 +184,7 @@ async function example() { ...@@ -185,7 +184,7 @@ async function example() {
createPhotoAsset(displayName: string, callback: AsyncCallback&lt;FileAsset&gt;): void; createPhotoAsset(displayName: string, callback: AsyncCallback&lt;FileAsset&gt;): void;
创建图片或视频资源,使用callback方式返回结果。 指定待创建的图片或者视频的文件名,创建图片或视频资源,使用callback方式返回结果。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
...@@ -195,15 +194,15 @@ createPhotoAsset(displayName: string, callback: AsyncCallback&lt;FileAsset&gt;): ...@@ -195,15 +194,15 @@ createPhotoAsset(displayName: string, callback: AsyncCallback&lt;FileAsset&gt;):
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- | | -------- | ------------------------ | ---- | ------------------------- |
| displayName | string | 是 | 创建的图片或者视频文件名 | | displayName | string | 是 | 创建的图片或者视频文件名 |
| callback | AsyncCallback&lt;[FileAsset](#fileasset)&gt; | 是 | callback 返回创建的图片和视频结果 | | callback | AsyncCallback&lt;[FileAsset](#fileasset)&gt; | 是 | callback返回创建的图片和视频结果。 |
**示例:** **示例:**
```ts ```ts
async function example() { async function example() {
console.info('createPhotoAssetDemo'); console.info('createPhotoAssetDemo');
let testFileName = "testFile" + Date.now() + ".jpg"; let testFileName = 'testFile' + Date.now() + '.jpg';
mgr.createPhotoAsset(testFileName, (err, fileAsset) => { mgr.createPhotoAsset(testFileName, (err, fileAsset) => {
if (fileAsset != undefined) { if (fileAsset != undefined) {
console.info('createPhotoAsset file displayName' + fileAsset.displayName); console.info('createPhotoAsset file displayName' + fileAsset.displayName);
...@@ -219,7 +218,7 @@ async function example() { ...@@ -219,7 +218,7 @@ async function example() {
createPhotoAsset(displayName: string, albumUri?: string): Promise&lt;FileAsset&gt;; createPhotoAsset(displayName: string, albumUri?: string): Promise&lt;FileAsset&gt;;
创建图片或视频资源,使用Promise方式返回结果。 指定待创建的图片或者视频的文件名和所在相册的uri,创建图片或视频资源,使用Promise方式返回结果。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
...@@ -229,14 +228,14 @@ createPhotoAsset(displayName: string, albumUri?: string): Promise&lt;FileAsset&g ...@@ -229,14 +228,14 @@ createPhotoAsset(displayName: string, albumUri?: string): Promise&lt;FileAsset&g
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- | | -------- | ------------------------ | ---- | ------------------------- |
| displayName | string | 是 | 创建的图片或者视频文件名 | | displayName | string | 是 | 创建的图片或者视频文件名 |
| albumUri | string | 否 | 创建的图片或者视频所在相册的uri | | albumUri | string | 否 | 创建的图片或者视频所在相册的uri |
**返回值:** **返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| --------------------------- | -------------- | | --------------------------- | -------------- |
| Promise&lt;[FileAsset](#fileasset)&gt; | 返回创建的图片和视频结果 | | Promise&lt;[FileAsset](#fileasset)&gt; | Promise对象,返回创建的图片和视频结果。 |
**示例:** **示例:**
...@@ -244,7 +243,7 @@ createPhotoAsset(displayName: string, albumUri?: string): Promise&lt;FileAsset&g ...@@ -244,7 +243,7 @@ createPhotoAsset(displayName: string, albumUri?: string): Promise&lt;FileAsset&g
async function example() { async function example() {
console.info('createPhotoAssetDemo'); console.info('createPhotoAssetDemo');
try { try {
let testFileName = "testFile" + Date.now() + ".jpg"; let testFileName = 'testFile' + Date.now() + '.jpg';
let fileAsset = await mgr.createPhotoAsset(testFileName); let fileAsset = await mgr.createPhotoAsset(testFileName);
console.info('createPhotoAsset file displayName' + fileAsset.displayName); console.info('createPhotoAsset file displayName' + fileAsset.displayName);
console.info('createPhotoAsset successfully'); console.info('createPhotoAsset successfully');
...@@ -254,10 +253,163 @@ async function example() { ...@@ -254,10 +253,163 @@ async function example() {
} }
``` ```
### createPhotoAsset
createPhotoAsset(displayName: string, createOption: PhotoCreateOptions, callback: AsyncCallback&lt;FileAsset&gt;): void;
指定待创建的图片或者视频的文件名和创建选项,创建图片或视频资源,使用callback方式返回结果。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| displayName | string | 是 | 创建的图片或者视频文件名。 |
| createOption | [PhotoCreateOptions](#photocreateoptions10) | 是 | 图片或视频的创建选项。 |
| callback | AsyncCallback&lt;[FileAsset](#fileasset)&gt; | 是 | 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&lt;FileAsset&gt;;
指定待创建的图片或者视频的文件名和创建选项,创建图片或视频资源,使用Promise方式返回结果。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| displayName | string | 是 | 创建的图片或者视频文件名。 |
| createOption | [PhotoCreateOptions](#photocreateoptions10) | 是 | 图片或视频的创建选项。 |
**返回值:**
| 类型 | 说明 |
| --------------------------- | -------------- |
| Promise&lt;[FileAsset](#fileasset)&gt; | 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&lt;FileAsset&gt;): void;
创建音频文件资源,使用callback方式返回结果。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| displayName | string | 是 | 创建的音频文件名。 |
| callback | AsyncCallback&lt;[FileAsset](#fileasset)&gt; | 是 | 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&lt;FileAsset&gt;;
创建音频文件资源,使用Promise方式返回结果。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| displayName | string | 是 | 创建的音频文件名。 |
**返回值:**
| 类型 | 说明 |
| --------------------------- | -------------- |
| Promise&lt;[FileAsset](#fileasset)&gt; | 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
getPhotoAlbums(options: AlbumFetchOptions, callback: AsyncCallback&lt;FetchResult&lt;Album&gt;&gt;): void; getPhotoAlbums(options: AlbumFetchOptions, callback: AsyncCallback&lt;FetchResult&lt;Album&gt;&gt;): void;
获取相册,使用callback方式返回结果。 获取相册,使用callback方式返回结果。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
...@@ -268,8 +420,8 @@ getPhotoAlbums(options: AlbumFetchOptions, callback: AsyncCallback&lt;FetchResul ...@@ -268,8 +420,8 @@ getPhotoAlbums(options: AlbumFetchOptions, callback: AsyncCallback&lt;FetchResul
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- | | -------- | ------------------------ | ---- | ------------------------- |
| options | [AlbumFetchOptions](#albumfetchoptions) | 是 | 相册检索选项 | | options | [AlbumFetchOptions](#albumfetchoptions) | 是 | 相册检索选项 |
| callback | AsyncCallback&lt;[FetchResult](#fetchresult)&lt;[Album](#album)&gt;&gt; | 是 | callback 返回相册检索结果 | | callback | AsyncCallback&lt;[FetchResult](#fetchresult)&lt;[Album](#album)&gt;&gt; | 是 | callback返回相册检索结果。 |
**示例:** **示例:**
...@@ -314,13 +466,13 @@ getPhotoAlbums(options: AlbumFetchOptions): Promise&lt;FetchResult&lt;Album&gt;& ...@@ -314,13 +466,13 @@ getPhotoAlbums(options: AlbumFetchOptions): Promise&lt;FetchResult&lt;Album&gt;&
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- | | -------- | ------------------------ | ---- | ------------------------- |
| options | [AlbumFetchOptions](#albumfetchoptions) | 是 | 相册检索选项 | | options | [AlbumFetchOptions](#albumfetchoptions) | 是 | 相册检索选项 |
**返回值:** **返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| --------------------------- | -------------- | | --------------------------- | -------------- |
| Promise&lt;[FetchResult](#fetchresult)&lt;[Album](#album)&gt;&gt; | Promise 返回相册检索结果 | | Promise&lt;[FetchResult](#fetchresult)&lt;[Album](#album)&gt;&gt; | Promise对象,返回相册检索结果。 |
**示例:** **示例:**
...@@ -344,259 +496,574 @@ async function example() { ...@@ -344,259 +496,574 @@ async function example() {
} }
``` ```
### getPrivateAlbum ### createAlbum<sup>10+</sup>
getPrivateAlbum(type: PrivateAlbumType, callback: AsyncCallback&lt;FetchResult&lt;PrivateAlbum&gt;&gt;): void; createAlbum(name: string, callback: AsyncCallback&lt;Album&gt;): void;
获取系统相册,使用 callback 方式返回系统相册的数组。 创建相册,使用callback方式返回结果。
待创建的相册名参数规格为:
- 相册名字符串长度为1~255。
- 不允许出现的非法英文字符,包括:<br> . .. \ / : * ? " ' ` < > | { } [ ]
- 英文字符大小写不敏感。
- 相册名不允许重名。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.READ_IMAGEVIDEO **需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**参数:** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- | | -------- | ------------------------ | ---- | ------------------------- |
| type | [PrivateAlbumType](#privatealbumtype) | 是 | 系统相册类型 | | name | string | 是 | 待创建相册的相册名。 |
| callback | AsyncCallback&lt;[FetchResult](#fetchresult)&lt;[PrivateAlbum](#privatealbum)&gt;&gt; | 是 | callback 返回相册检索结果 | | callback | AsyncCallback&lt;[Album](#album)&gt; | 是 | callback返回创建的相册实例。 |
**示例:** **示例:**
```ts ```ts
async function example() { async function example() {
console.info('getPrivateAlbumDemo'); console.info('createAlbumDemo');
mgr.getPrivateAlbum(userFileManager.PrivateAlbumType.TYPE_TRASH, async (err, fetchResult) => { let albumName = 'newAlbumName' + new Date().getTime();
if (fetchResult != undefined) { mgr.createAlbum(albumName, (err, album) => {
let trashAlbum = await fetchResult.getFirstObject(); if (err) {
console.info('first album.albumName = ' + trashAlbum.albumName); console.error('createAlbumCallback failed with err: ' + err);
} else { return;
console.error('getPrivateAlbum failed. message = ', err);
} }
console.info('createAlbumCallback successfully, album: ' + album.albumName + ' album uri: ' + album.albumUri);
}); });
} }
``` ```
### getPrivateAlbum ### createAlbum<sup>10+</sup>
getPrivateAlbum(type: PrivateAlbumType): Promise&lt;FetchResult&lt;PrivateAlbum&gt;&gt;; createAlbum(name: string): Promise&lt;Album&gt;;
创建相册,使用Promise方式返回结果。
获取系统相册,使用Promise方式返回结果。 待创建的相册名参数规格为:
- 相册名字符串长度为1~255。
- 不允许出现的非法英文字符,包括:<br> . .. \ / : * ? " ' ` < > | { } [ ]
- 英文字符大小写不敏感。
- 相册名不允许重名。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.READ_IMAGEVIDEO **需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**参数:** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- | | -------- | ------------------------ | ---- | ------------------------- |
| type | [PrivateAlbumType](#privatealbumtype) | 是 | 系统相册类型 | | name | string | 是 | 待创建相册的相册名。 |
**返回值:** **返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| --------------------------- | -------------- | | --------------------------- | -------------- |
| Promise&lt;[FetchResult](#fetchresult)&lt;[PrivateAlbum](#privatealbum)&gt;&gt; | Promise 返回相册检索结果 | | Promise&lt;[Album](#album)&gt; | Promise对象,返回创建的相册实例。 |
**示例:** **示例:**
```ts ```ts
async function example() { async function example() {
console.info('getPrivateAlbumDemo'); console.info('createAlbumDemo');
try { let albumName = 'newAlbumName' + new Date().getTime();
let fetchResult = await mgr.getPrivateAlbum(userFileManager.PrivateAlbumType.TYPE_TRASH); mgr.createAlbum(albumName).then((album) => {
let trashAlbum = await fetchResult.getFirstObject(); console.info('createAlbumPromise successfully, album: ' + album.albumName + ' album uri: ' + album.albumUri);
console.info('first album.albumName = ' + trashAlbum.albumName); }).catch((err) => {
} catch (err) { console.error('createAlbumPromise failed with err: ' + err);
console.error('getPrivateAlbum failed. message = ', err); });
}
} }
``` ```
### getAudioAssets ### deleteAlbums<sup>10+</sup>
getAudioAssets(options: FetchOptions, callback: AsyncCallback&lt;FetchResult&lt;FileAsset&gt;&gt;): void; deleteAlbums(albums: Array&lt;Album&gt;, callback: AsyncCallback&lt;void&gt;): void;
获取音频文件,使用callback方式返回结果。 删除相册,使用callback方式返回结果。
删除相册前需先确保相册存在,只能删除用户相册。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.READ_AUDIO **需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**参数:** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- | | -------- | ------------------------ | ---- | ------------------------- |
| options | [FetchOptions](#fetchoptions) | 是 | 检索选项 | | albums | Array&lt;[Album](#album)&gt; | 是 | 待删除相册的数组。 |
| callback | AsyncCallback&lt;[FetchResult](#fetchresult)&lt;[FileAsset](#fileasset)&gt;&gt; | 是 | callback 返回音频检索结果 | | callback | AsyncCallback&lt;void&gt; | 是 | callback返回void。 |
**示例:** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() { async function example() {
console.info('getAudioAssets'); // 示例代码为删除名称包含newAlbumName的第一个相册。
console.info('deleteAlbumsDemo');
let predicates = new dataSharePredicates.DataSharePredicates(); let predicates = new dataSharePredicates.DataSharePredicates();
predicates.like('album_name', '%newAlbumName%');
let fetchOptions = { let fetchOptions = {
fetchColumns: [], fetchColumns: [],
predicates: predicates predicates: predicates
}; };
let fetchResult = await mgr.getAlbums(userFileManager.AlbumType.USER, userFileManager.AlbumSubType.USER_GENERIC, fetchOptions);
mgr.getAudioAssets(fetchOptions, async (err, fetchResult) => { let album = await fetchResult.getFirstObject();
if (fetchResult != undefined) { mgr.deleteAlbums([album], (err) => {
console.info('fetchFileResult success'); if (err) {
let fileAsset = await fetchResult.getFirstObject(); console.error('deletePhotoAlbumsCallback failed with err: ' + err);
if (fileAsset != undefined) { return;
console.info("fileAsset.displayName :" + fileAsset.displayName);
}
} else {
console.error('fetchFileResult fail' + err);
} }
console.info('deletePhotoAlbumsCallback successfully');
}); });
fetchResult.close();
} }
``` ```
### getAudioAssets ### deleteAlbums<sup>10+</sup>
getAudioAssets(options: FetchOptions): Promise&lt;FetchResult&lt;FileAsset&gt;&gt;; deleteAlbums(albums: Array&lt;Album&gt;): Promise&lt;void&gt;;
获取音频文件,使用callback方式返回结果。 删除相册,使用Promise方式返回结果。
删除相册前需先确保相册存在,只能删除用户相册。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.READ_AUDIO **需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**参数:** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- | | -------- | ------------------------ | ---- | ------------------------- |
| options | [FetchOptions](#fetchoptions) | 是 | 检索选项 | | albums | Array&lt;[Album](#album)&gt; | 是 | 待删除相册的数组。 |
**返回值:** **返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| --------------------------- | -------------- | | --------------------------- | -------------- |
| Promise&lt;[FetchResult](#fetchresult)&lt;[FileAsset](#fileasset)&gt;&gt; | Promise 返回音频检索结果 | | Promise&lt;void&gt; | Promise对象,返回void。 |
**示例:** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() { async function example() {
console.info('getAudioAssets'); // 示例代码为删除名称包含newAlbumName的第一个相册。
console.info('deleteAlbumsDemo');
let predicates = new dataSharePredicates.DataSharePredicates(); let predicates = new dataSharePredicates.DataSharePredicates();
predicates.like('album_name', '%newAlbumName%');
let fetchOptions = { let fetchOptions = {
fetchColumns: [], fetchColumns: [],
predicates: predicates predicates: predicates
}; };
try { let fetchResult = await mgr.getAlbums(userFileManager.AlbumType.USER, userFileManager.AlbumSubType.USER_GENERIC, fetchOptions);
var fetchResult = await mgr.getAudioAssets(fetchOptions); let album = await fetchResult.getFirstObject();
} catch (err) { mgr.deleteAlbums([album]).then(() => {
console.error('getAudioAssets failed, message = ', err); console.info('deletePhotoAlbumsPromise successfully');
} }).catch((err) => {
console.error('deletePhotoAlbumsPromise failed with err: ' + err);
if (fetchResult != undefined) { });
console.info('fetchFileResult success'); fetchResult.close();
let fileAsset = await fetchResult.getFirstObject();
if (fileAsset != undefined) {
console.info("fileAsset.displayName :" + fileAsset.displayName);
}
}
} }
``` ```
### delete ### getAlbums<sup>10+</sup>
delete(uri: string, callback: AsyncCallback&lt;void&gt;): void; getAlbums(type: AlbumType, subType: AlbumSubType, options: FetchOptions, callback: AsyncCallback&lt;FetchResult&lt;Album&gt;&gt;): void;
删除媒体文件,删除的文件进入到回收站 根据检索选项和相册类型获取相册,使用callback方式返回结果
**需要权限**:ohos.permission.READ_IMAGEVIDEO 和 ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.READ_AUDIO 和 ohos.permission.WRITE_AUDIO 获取相册前需先保证相册存在。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **需要权限**:ohos.permission.READ_IMAGEVIDEO
| 参数名 | 类型 | 必填 | 说明 | **参数:**
| -------- | ------------------------- | ---- | ---------- |
| uri | string | 是 | 媒体文件uri | | 参数名 | 类型 | 必填 | 说明 |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调返回空 | | -------- | ------------------------ | ---- | ------------------------- |
| type | [AlbumType](#albumtype10) | 是 | 相册类型。 |
| subType | [AlbumSubType](#albumsubtype10) | 是 | 相册子类型。 |
| options | [FetchOptions](#fetchoptions) | 是 | 检索选项。 |
| callback | AsyncCallback&lt;[FetchResult](#fetchresult)&lt;[Album](#album)&gt;&gt; | 是 | callback返回获取相册的结果集。 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() { async function example() {
console.info('deleteAssetDemo'); // 示例代码中为获取相册名中包含newAlbumName的第一个相册。
console.info('getAlbumsDemo');
let predicates = new dataSharePredicates.DataSharePredicates(); let predicates = new dataSharePredicates.DataSharePredicates();
predicates.like('album_name', '%newAlbumName%');
let fetchOptions = { let fetchOptions = {
fetchColumns: [], fetchColumns: [],
predicates: predicates predicates: predicates
}; };
try { mgr.getAlbums(userFileManager.AlbumType.USER, userFileManager.AlbumSubType.USER_GENERIC, fetchOptions, async (err, fetchResult) => {
const fetchResult = await mgr.getPhotoAssets(fetchOptions); if (err) {
var asset = await fetchResult.getFirstObject(); console.error('getAlbumsCallback failed with err: ' + err);
} catch (err) { return;
console.info('fetch failed, message =', 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();
});
}
```
if (asset == undefined) { ### getAlbums<sup>10+</sup>
console.error('asset not exist');
return; getAlbums(type: AlbumType, subType: AlbumSubType, callback: AsyncCallback&lt;FetchResult&lt;Album&gt;&gt;): void;
}
mgr.delete(asset.uri, (err) => { 根据相册类型获取相册,使用callback方式返回结果。
if (err == undefined) {
console.info("delete successfully"); 获取相册前需先保证相册存在。
} else {
console.error("delete failed with error: " + err); **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.READ_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| type | [AlbumType](#albumtype10) | 是 | 相册类型。 |
| subType | [AlbumSubType](#albumsubtype10) | 是 | 相册子类型。 |
| callback | AsyncCallback&lt;[FetchResult](#fetchresult)&lt;[Album](#album)&gt;&gt; | 是 | callback返回获取相册的结果集。 |
**示例:**
```ts
async function example() {
// 示例代码中为获取统相册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;
} }
if (fetchResult == undefined) {
console.error('getAlbumsCallback fetchResult is undefined');
return;
}
let album = await fetchResult.getFirstObject();
console.info('getAlbumsCallback successfully, albumUri: ' + album.albumUri);
fetchResult.close();
}); });
} }
``` ```
### delete ### getAlbums<sup>10+</sup>
delete(uri: string): Promise&lt;void&gt;; getAlbums(type: AlbumType, subType: AlbumSubType, options?: FetchOptions): Promise&lt;FetchResult&lt;Album&gt;&gt;;
删除媒体文件,删除的文件进入到回收站 根据检索选项和相册类型获取相册,使用Promise方式返回结果
**需要权限**:ohos.permission.READ_IMAGEVIDEO 和 ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.READ_AUDIO 和 ohos.permission.WRITE_AUDIO 获取相册前需先保证相册存在。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **需要权限**:ohos.permission.READ_IMAGEVIDEO
| 参数名 | 类型 | 必填 | 说明 | **参数:**
| -------- | ------------------------- | ---- | ---------- |
| uri | string | 是 | 媒体文件uri | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| type | [AlbumType](#albumtype10) | 是 | 相册类型。 |
| subType | [AlbumSubType](#albumsubtype10) | 是 | 相册子类型。 |
| options | [FetchOptions](#fetchoptions) | 否 | 检索选项,不填时默认根据相册类型检索。 |
**返回值:** **返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| --------------------------------------- | ----------------- | | --------------------------- | -------------- |
| Promise&lt;void&gt;| 回调返回空 | | Promise&lt;[FetchResult](#fetchresult)&lt;[Album](#album)&gt;&gt; | Promise对象,返回获取相册的结果集。 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() { async function example() {
console.info('deleteDemo'); // 示例代码中为获取相册名中包含newAlbumName的第一个相册。
console.info('getAlbumsDemo');
let predicates = new dataSharePredicates.DataSharePredicates(); let predicates = new dataSharePredicates.DataSharePredicates();
predicates.like('album_name', '%newAlbumName%');
let fetchOptions = { let fetchOptions = {
fetchColumns: [], fetchColumns: [],
predicates: predicates predicates: predicates
}; };
try { mgr.getAlbums(userFileManager.AlbumType.USER, userFileManager.AlbumSubType.USER_GENERIC, fetchOptions).then( async (fetchResult) => {
const fetchResult = await mgr.getPhotoAssets(fetchOptions); if (fetchResult == undefined) {
var asset = await fetchResult.getFirstObject(); console.error('getAlbumsPromise fetchResult is undefined');
} catch (err) { return;
}
let album = await fetchResult.getFirstObject();
console.info('getAlbumsPromise successfully, albumName: ' + album.albumName);
fetchResult.close();
}).catch((err) => {
console.error('getAlbumsPromise failed with err: ' + err);
});
}
```
### getPrivateAlbum
getPrivateAlbum(type: PrivateAlbumType, callback: AsyncCallback&lt;FetchResult&lt;PrivateAlbum&gt;&gt;): void;
获取系统相册,使用 callback 方式返回系统相册的数组。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.READ_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| type | [PrivateAlbumType](#privatealbumtype) | 是 | 系统相册类型。 |
| callback | AsyncCallback&lt;[FetchResult](#fetchresult)&lt;[PrivateAlbum](#privatealbum)&gt;&gt; | 是 | 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);
}
});
}
```
### getPrivateAlbum
getPrivateAlbum(type: PrivateAlbumType): Promise&lt;FetchResult&lt;PrivateAlbum&gt;&gt;;
获取系统相册,使用Promise方式返回结果。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.READ_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| type | [PrivateAlbumType](#privatealbumtype) | 是 | 系统相册类型。 |
**返回值:**
| 类型 | 说明 |
| --------------------------- | -------------- |
| Promise&lt;[FetchResult](#fetchresult)&lt;[PrivateAlbum](#privatealbum)&gt;&gt; | 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);
}
}
```
### getAudioAssets
getAudioAssets(options: FetchOptions, callback: AsyncCallback&lt;FetchResult&lt;FileAsset&gt;&gt;): void;
获取音频文件,使用callback方式返回结果。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.READ_AUDIO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| options | [FetchOptions](#fetchoptions) | 是 | 检索选项。 |
| callback | AsyncCallback&lt;[FetchResult](#fetchresult)&lt;[FileAsset](#fileasset)&gt;&gt; | 是 | callback返回音频检索结果。 |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
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('fetchFileResult fail' + err);
}
});
}
```
### getAudioAssets
getAudioAssets(options: FetchOptions): Promise&lt;FetchResult&lt;FileAsset&gt;&gt;;
获取音频文件,使用callback方式返回结果。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.READ_AUDIO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| options | [FetchOptions](#fetchoptions) | 是 | 检索选项。 |
**返回值:**
| 类型 | 说明 |
| --------------------------- | -------------- |
| Promise&lt;[FetchResult](#fetchresult)&lt;[FileAsset](#fileasset)&gt;&gt; | Promise对象,返回音频检索结果。 |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
console.info('getAudioAssets');
let predicates = new dataSharePredicates.DataSharePredicates();
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);
}
}
}
```
### delete
delete(uri: string, callback: AsyncCallback&lt;void&gt;): void;
删除媒体文件,删除的文件进入到回收站。
**需要权限**:ohos.permission.READ_IMAGEVIDEO 和 ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.READ_AUDIO 和 ohos.permission.WRITE_AUDIO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| uri | string | 是 | 媒体文件uri。 |
| callback | AsyncCallback&lt;void&gt; | 是 | callback返回void。 |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
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.error('delete failed with error: ' + err);
}
});
}
```
### delete
delete(uri: string): Promise&lt;void&gt;;
删除媒体文件,删除的文件进入到回收站。
**需要权限**:ohos.permission.READ_IMAGEVIDEO 和 ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.READ_AUDIO 和 ohos.permission.WRITE_AUDIO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| uri | string | 是 | 媒体文件uri。 |
**返回值:**
| 类型 | 说明 |
| --------------------------------------- | ----------------- |
| Promise&lt;void&gt;| 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); console.info('fetch failed, message =', err);
} }
...@@ -606,9 +1073,9 @@ async function example() { ...@@ -606,9 +1073,9 @@ async function example() {
} }
try { try {
await mgr.delete(asset.uri); await mgr.delete(asset.uri);
console.info("delete successfully"); console.info('delete successfully');
} catch (err) { } catch (err) {
console.error("delete failed with error: " + err); console.error('delete failed with error: ' + err);
} }
} }
``` ```
...@@ -626,7 +1093,7 @@ on(type: ChangeEvent, callback: Callback&lt;void&gt;): void ...@@ -626,7 +1093,7 @@ on(type: ChangeEvent, callback: Callback&lt;void&gt;): void
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | -------------------- | ---- | ------------------------------------------------------------ | | -------- | -------------------- | ---- | ------------------------------------------------------------ |
| type | [ChangeEvent](#changeevent) | 是 | 媒体类型 <br/>'deviceChange':&nbsp;注册设备变更 <br/>'albumChange':&nbsp;相册变更<br/>'imageChange':&nbsp;图片文件变更<br/>'audioChange': &nbsp;音频文件变更<br/>'videoChange': &nbsp;视频文件变更<br/>'remoteFileChange':&nbsp;注册设备上文件变更 | | type | [ChangeEvent](#changeevent) | 是 | 媒体类型 <br/>'deviceChange':&nbsp;注册设备变更 <br/>'albumChange':&nbsp;相册变更<br/>'imageChange':&nbsp;图片文件变更<br/>'audioChange': &nbsp;音频文件变更<br/>'videoChange': &nbsp;视频文件变更<br/>'remoteFileChange':&nbsp;注册设备上文件变更 |
| callback | Callback&lt;void&gt; | 是 | 回调返回空 | | callback | Callback&lt;void&gt; | 是 | callback返回void |
**示例:** **示例:**
...@@ -639,7 +1106,7 @@ async function example() { ...@@ -639,7 +1106,7 @@ async function example() {
// image file had changed, do something // image file had changed, do something
}); });
try { try {
let testFileName = "testFile" + Date.now() + ".jpg"; let testFileName = 'testFile' + Date.now() + '.jpg';
let fileAsset = await mgr.createPhotoAsset(testFileName); let fileAsset = await mgr.createPhotoAsset(testFileName);
console.info('createPhotoAsset file displayName' + fileAsset.displayName); console.info('createPhotoAsset file displayName' + fileAsset.displayName);
console.info('createPhotoAsset successfully'); console.info('createPhotoAsset successfully');
...@@ -648,9 +1115,9 @@ async function example() { ...@@ -648,9 +1115,9 @@ async function example() {
} }
//sleep 1s //sleep 1s
if (count > 0) { if (count > 0) {
console.info("onDemo success"); console.info('onDemo success');
} else { } else {
console.error("onDemo fail"); console.error('onDemo fail');
} }
mgr.off('imageChange', () => { mgr.off('imageChange', () => {
// stop listening success // stop listening success
...@@ -670,8 +1137,8 @@ off(type: ChangeEvent, callback?: Callback&lt;void&gt;): void ...@@ -670,8 +1137,8 @@ off(type: ChangeEvent, callback?: Callback&lt;void&gt;): void
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | -------------------- | ---- | ------------------------------------------------------------ | | -------- | -------------------- | ---- | ------------------------------------------------------------ |
| type | [ChangeEvent](#changeevent) | 是 | 媒体类型 <br/>'deviceChange':&nbsp;注册设备变更 <br/>'albumChange':&nbsp;相册变更<br/>'imageChange':&nbsp;图片文件变更<br/>'audioChange': &nbsp;音频文件变更<br/>'videoChange': &nbsp;视频文件变更<br/>'remoteFileChange':&nbsp;注册设备上文件变更 | | type | [ChangeEvent](#changeevent) | 是 | 媒体类型 <br/>'deviceChange':&nbsp;注册设备变更 <br/>'albumChange':&nbsp;相册变更<br/>'imageChange':&nbsp;图片文件变更<br/>'audioChange': &nbsp;音频文件变更<br/>'videoChange': &nbsp;视频文件变更<br/>'remoteFileChange':&nbsp;注册设备上文件变更 |
| callback | Callback&lt;void&gt; | 否 | 回调返回空 | | callback | Callback&lt;void&gt; | 否 | callback返回void。 |
**示例:** **示例:**
...@@ -689,7 +1156,7 @@ async function example() { ...@@ -689,7 +1156,7 @@ async function example() {
}); });
try { try {
let testFileName = "testFile" + Date.now() + ".jpg"; let testFileName = 'testFile' + Date.now() + '.jpg';
let fileAsset = await mgr.createPhotoAsset(testFileName); let fileAsset = await mgr.createPhotoAsset(testFileName);
console.info('createPhotoAsset file displayName' + fileAsset.displayName); console.info('createPhotoAsset file displayName' + fileAsset.displayName);
console.info('createPhotoAsset successfully'); console.info('createPhotoAsset successfully');
...@@ -698,9 +1165,9 @@ async function example() { ...@@ -698,9 +1165,9 @@ async function example() {
} }
//sleep 1s //sleep 1s
if (count == 0) { if (count == 0) {
console.info("offDemo success"); console.info('offDemo success');
} else { } else {
console.error("offDemo fail"); console.error('offDemo fail');
} }
} }
``` ```
...@@ -717,7 +1184,7 @@ getActivePeers(callback: AsyncCallback&lt;Array&lt;PeerInfo&gt;&gt;): void; ...@@ -717,7 +1184,7 @@ getActivePeers(callback: AsyncCallback&lt;Array&lt;PeerInfo&gt;&gt;): void;
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | --------------------------------- | ---- | ------------ | | -------- | --------------------------------- | ---- | ------------ |
| callback | AsyncCallback&lt;Array&lt;[PeerInfo](#peerinfo)&gt;&gt; | 是 | 返回在线设备列表 | | callback | AsyncCallback&lt;Array&lt;[PeerInfo](#peerinfo)&gt;&gt; | 是 | 返回在线设备列表 |
**示例:** **示例:**
...@@ -749,7 +1216,7 @@ getActivePeers(): Promise&lt;Array&lt;PeerInfo&gt;&gt;; ...@@ -749,7 +1216,7 @@ getActivePeers(): Promise&lt;Array&lt;PeerInfo&gt;&gt;;
| 类型 | 说明 | | 类型 | 说明 |
| --------------------------- | ----------------------------- | | --------------------------- | ----------------------------- |
| Promise&lt;Array&lt;[PeerInfo](#peerinfo)&gt;&gt; | Promise实例,返回在线设备列表 | | Promise&lt;Array&lt;[PeerInfo](#peerinfo)&gt;&gt; | Promise对象,返回在线设备列表。 |
**示例:** **示例:**
...@@ -784,7 +1251,7 @@ getAllPeers(callback: AsyncCallback&lt;Array&lt;PeerInfo&gt;&gt;): void; ...@@ -784,7 +1251,7 @@ getAllPeers(callback: AsyncCallback&lt;Array&lt;PeerInfo&gt;&gt;): void;
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | --------------------------------- | ---- | ------------ | | -------- | --------------------------------- | ---- | ------------ |
| callback | AsyncCallback&lt;Array&lt;[PeerInfo](#peerinfo)&gt;&gt; | 是 | 返回在线设备列表 | | callback | AsyncCallback&lt;Array&lt;[PeerInfo](#peerinfo)&gt;&gt; | 是 | 返回在线设备列表 |
**示例:** **示例:**
...@@ -816,7 +1283,7 @@ getAllPeers(): Promise&lt;Array&lt;PeerInfo&gt;&gt;; ...@@ -816,7 +1283,7 @@ getAllPeers(): Promise&lt;Array&lt;PeerInfo&gt;&gt;;
| 类型 | 说明 | | 类型 | 说明 |
| --------------------------- | ----------------------------- | | --------------------------- | ----------------------------- |
| Promise&lt;Array&lt;[PeerInfo](#peerinfo)&gt;&gt; | Promise实例,返回所有设备列表 | | Promise&lt;Array&lt;[PeerInfo](#peerinfo)&gt;&gt; | Promise对象,返回所有设备列表。 |
**示例:** **示例:**
...@@ -852,7 +1319,7 @@ release(callback: AsyncCallback&lt;void&gt;): void ...@@ -852,7 +1319,7 @@ release(callback: AsyncCallback&lt;void&gt;): void
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | -------------------- | | -------- | ------------------------- | ---- | -------------------- |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调表示成功还是失败 | | callback | AsyncCallback&lt;void&gt; | 是 | 回调表示成功还是失败 |
**示例:** **示例:**
...@@ -882,7 +1349,7 @@ release(): Promise&lt;void&gt; ...@@ -882,7 +1349,7 @@ release(): Promise&lt;void&gt;
| 类型 | 说明 | | 类型 | 说明 |
| ------------------- | --------------------------------- | | ------------------- | --------------------------------- |
| Promise&lt;void&gt; | Promise实例,用于获取异步返回结果 | | Promise&lt;void&gt; | Promise对象,返回void。 |
**示例:** **示例:**
...@@ -904,14 +1371,13 @@ async function example() { ...@@ -904,14 +1371,13 @@ async function example() {
### 属性 ### 属性
**系统能力:** 以下各项对应的系统能力均为SystemCapability.FileManagement.UserFileManager.Core **系统能力**SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 可读 | 可写 | 说明 | | 名称 | 类型 | 可读 | 可写 | 说明 |
| ------------------------- | ------------------------ | ---- | ---- | ------------------------------------------------------ | | ------------------------- | ------------------------ | ---- | ---- | ------------------------------------------------------ |
| uri | string | 是 | 否 | 文件资源uri(如:dataability:///media/image/2) | | uri | string | 是 | 否 | 文件资源uri(如:file://media/image/2)。 |
| fileType | [FileType](#filetype) | 是 | 否 | 媒体文件类型 | | fileType | [FileType](#filetype) | 是 | 否 | 媒体文件类型 |
| displayName | string | 是 | 是 | 显示文件名,包含后缀名 | | displayName | string | 是 | 是 | 显示文件名,包含后缀名。 |
### get ### get
...@@ -925,7 +1391,7 @@ get(member: string): MemberType; ...@@ -925,7 +1391,7 @@ get(member: string): MemberType;
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ----- | | -------- | ------------------------- | ---- | ----- |
| member | string | 是 | 成员参数名称例如:ImageVideoKey.URI | | member | string | 是 | 成员参数名称例如:ImageVideoKey.URI |
**示例:** **示例:**
...@@ -937,7 +1403,7 @@ async function example() { ...@@ -937,7 +1403,7 @@ async function example() {
try { try {
let predicates = new dataSharePredicates.DataSharePredicates(); let predicates = new dataSharePredicates.DataSharePredicates();
let fetchOption = { let fetchOption = {
fetchColumns: [], fetchColumns: ['title'],
predicates: predicates predicates: predicates
}; };
let fetchResult = await mgr.getPhotoAssets(fetchOption); let fetchResult = await mgr.getPhotoAssets(fetchOption);
...@@ -963,8 +1429,8 @@ set(member: string, value: string): void; ...@@ -963,8 +1429,8 @@ set(member: string, value: string): void;
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ----- | | -------- | ------------------------- | ---- | ----- |
| member | string | 是 | 成员参数名称例如:ImageVideoKey.URI | | member | string | 是 | 成员参数名称例如:ImageVideoKey.URI |
| value | string | 是 | 设置成员参数名称,只能修改ImageVideoKey.TITLE的值 | | value | string | 是 | 设置成员参数名称,只能修改ImageVideoKey.DISPLAY_NAME的值。 |
**示例:** **示例:**
...@@ -981,8 +1447,8 @@ async function example() { ...@@ -981,8 +1447,8 @@ async function example() {
}; };
let fetchResult = await mgr.getPhotoAssets(fetchOption); let fetchResult = await mgr.getPhotoAssets(fetchOption);
let fileAsset = await fetchResult.getFirstObject(); let fileAsset = await fetchResult.getFirstObject();
let title = userFileManager.ImageVideoKey.TITLE; let displayName = userFileManager.ImageVideoKey.DISPLAY_NAME;
fileAsset.set(title.toString(), "newTitle"); fileAsset.set(displayName, 'newDisplayName1');
} catch (err) { } catch (err) {
console.error('release failed. message = ', err); console.error('release failed. message = ', err);
} }
...@@ -1003,7 +1469,7 @@ commitModify(callback: AsyncCallback&lt;void&gt;): void ...@@ -1003,7 +1469,7 @@ commitModify(callback: AsyncCallback&lt;void&gt;): void
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ----- | | -------- | ------------------------- | ---- | ----- |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调返回空 | | callback | AsyncCallback&lt;void&gt; | 是 | callback返回void。 |
**示例:** **示例:**
...@@ -1019,14 +1485,14 @@ async function example() { ...@@ -1019,14 +1485,14 @@ async function example() {
}; };
let fetchResult = await mgr.getPhotoAssets(fetchOption); let fetchResult = await mgr.getPhotoAssets(fetchOption);
let fileAsset = await fetchResult.getFirstObject(); let fileAsset = await fetchResult.getFirstObject();
let title = userFileManager.ImageVideoKey.TITLE; let displayName = userFileManager.ImageVideoKey.DISPLAY_NAME;
let fileAssetTitle = fileAsset.get(title.toString()); let fileAssetDisplayName = fileAsset.get(displayName);
console.info('fileAsset Get fileAssetTitle = ', fileAssetTitle); console.info('fileAsset get fileAssetDisplayName = ', fileAssetDisplayName);
fileAsset.set(title.toString(), "newTitle"); fileAsset.set(displayName, 'newDisplayName2');
fileAsset.commitModify((err) => { fileAsset.commitModify((err) => {
if (err == undefined) { if (err == undefined) {
let newFileAssetTitle = fileAsset.get(title.toString()); let newFileAssetDisplayName = fileAsset.get(displayName);
console.info('fileAsset Get newFileAssetTitle = ', newFileAssetTitle); console.info('fileAsset get newFileAssetDisplayName = ', newFileAssetDisplayName);
} else { } else {
console.error('commitModify failed, message =', err); console.error('commitModify failed, message =', err);
} }
...@@ -1048,7 +1514,7 @@ commitModify(): Promise&lt;void&gt; ...@@ -1048,7 +1514,7 @@ commitModify(): Promise&lt;void&gt;
| 类型 | 说明 | | 类型 | 说明 |
| ------------------- | ---------- | | ------------------- | ---------- |
| Promise&lt;void&gt; | Promise返回空 | | Promise&lt;void&gt; | Promise对象,返回void。 |
**示例:** **示例:**
...@@ -1064,14 +1530,14 @@ async function example() { ...@@ -1064,14 +1530,14 @@ async function example() {
}; };
let fetchResult = await mgr.getPhotoAssets(fetchOption); let fetchResult = await mgr.getPhotoAssets(fetchOption);
let fileAsset = await fetchResult.getFirstObject(); let fileAsset = await fetchResult.getFirstObject();
let title = userFileManager.ImageVideoKey.TITLE; let displayName = userFileManager.ImageVideoKey.DISPLAY_NAME;
let fileAssetTitle = fileAsset.get(title.toString()); let fileAssetDisplayName = fileAsset.get(displayName);
console.info('fileAsset Get fileAssetTitle = ', fileAssetTitle); console.info('fileAsset get fileAssetDisplayName = ', fileAssetDisplayName);
fileAsset.set(title.toString(), "newTitle"); fileAsset.set(displayName, 'newDisplayName3');
try { try {
await fileAsset.commitModify(); await fileAsset.commitModify();
let newFileAssetTitle = fileAsset.get(title.toString()); let newFileAssetDisplayName = fileAsset.get(displayName);
console.info('fileAsset Get newFileAssetTitle = ', newFileAssetTitle); console.info('fileAsset get newFileAssetDisplayName = ', newFileAssetDisplayName);
} catch (err) { } catch (err) {
console.error('release failed. message = ', err); console.error('release failed. message = ', err);
} }
...@@ -1090,19 +1556,19 @@ open(mode: string, callback: AsyncCallback&lt;number&gt;): void ...@@ -1090,19 +1556,19 @@ open(mode: string, callback: AsyncCallback&lt;number&gt;): void
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **参数**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | --------------------------- | ---- | ----------------------------------- | | -------- | --------------------------- | ---- | ----------------------------------- |
| mode | string | 是 | 打开文件方式,如:'r'(只读), 'w'(只写), 'rw'(读写) | | mode | string | 是 | 打开文件方式,如:'r'(只读), 'w'(只写), 'rw'(读写) |
| callback | AsyncCallback&lt;number&gt; | 是 | 回调返回文件描述符 | | callback | AsyncCallback&lt;number&gt; | 是 | callback返回文件描述符。 |
**示例:** **示例:**
```ts ```ts
async function example() { async function example() {
console.info('openDemo'); console.info('openDemo');
let testFileName = "testFile" + Date.now() + ".jpg"; let testFileName = 'testFile' + Date.now() + '.jpg';
const fileAsset = await mgr.createPhotoAsset(testFileName); const fileAsset = await mgr.createPhotoAsset(testFileName);
fileAsset.open('rw', (err, fd) => { fileAsset.open('rw', (err, fd) => {
if (fd != undefined) { if (fd != undefined) {
...@@ -1131,13 +1597,13 @@ open(mode: string): Promise&lt;number&gt; ...@@ -1131,13 +1597,13 @@ open(mode: string): Promise&lt;number&gt;
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| ---- | ------ | ---- | ----------------------------------- | | ---- | ------ | ---- | ----------------------------------- |
| mode | string | 是 | 打开文件方式,如:'r'(只读), 'w'(只写), 'rw'(读写) | | mode | string | 是 | 打开文件方式,如:'r'(只读), 'w'(只写), 'rw'(读写) |
**返回值:** **返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| --------------------- | ------------- | | --------------------- | ------------- |
| Promise&lt;number&gt; | Promise返回文件描述符 | | Promise&lt;number&gt; | Promise对象,返回文件描述符。 |
**示例:** **示例:**
...@@ -1145,7 +1611,7 @@ open(mode: string): Promise&lt;number&gt; ...@@ -1145,7 +1611,7 @@ open(mode: string): Promise&lt;number&gt;
async function example() { async function example() {
console.info('openDemo'); console.info('openDemo');
try { try {
let testFileName = "testFile" + Date.now() + ".jpg"; let testFileName = 'testFile' + Date.now() + '.jpg';
const fileAsset = await mgr.createPhotoAsset(testFileName); const fileAsset = await mgr.createPhotoAsset(testFileName);
let fd = await fileAsset.open('rw'); let fd = await fileAsset.open('rw');
if (fd != undefined) { if (fd != undefined) {
...@@ -1172,8 +1638,8 @@ close(fd: number, callback: AsyncCallback&lt;void&gt;): void ...@@ -1172,8 +1638,8 @@ close(fd: number, callback: AsyncCallback&lt;void&gt;): void
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ----- | | -------- | ------------------------- | ---- | ----- |
| fd | number | 是 | 文件描述符 | | fd | number | 是 | 文件描述符 |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调返回空 | | callback | AsyncCallback&lt;void&gt; | 是 | callback返回void。 |
**示例:** **示例:**
...@@ -1217,13 +1683,13 @@ close(fd: number): Promise&lt;void&gt; ...@@ -1217,13 +1683,13 @@ close(fd: number): Promise&lt;void&gt;
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| ---- | ------ | ---- | ----- | | ---- | ------ | ---- | ----- |
| fd | number | 是 | 文件描述符 | | fd | number | 是 | 文件描述符 |
**返回值:** **返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| ------------------- | ---------- | | ------------------- | ---------- |
| Promise&lt;void&gt; | Promise返回空 | | Promise&lt;void&gt; | Promise对象,返回void。 |
**示例:** **示例:**
...@@ -1264,7 +1730,7 @@ getThumbnail(callback: AsyncCallback&lt;image.PixelMap&gt;): void ...@@ -1264,7 +1730,7 @@ getThumbnail(callback: AsyncCallback&lt;image.PixelMap&gt;): void
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ----------------------------------- | ---- | ---------------- | | -------- | ----------------------------------- | ---- | ---------------- |
| callback | AsyncCallback&lt;[image.PixelMap](js-apis-image.md#pixelmap7)&gt; | 是 | 回调返回缩略图的PixelMap | | callback | AsyncCallback&lt;[image.PixelMap](js-apis-image.md#pixelmap7)&gt; | 是 | callback返回缩略图的PixelMap。 |
**示例:** **示例:**
...@@ -1305,8 +1771,8 @@ getThumbnail(size: image.Size, callback: AsyncCallback&lt;image.PixelMap&gt;): v ...@@ -1305,8 +1771,8 @@ getThumbnail(size: image.Size, callback: AsyncCallback&lt;image.PixelMap&gt;): v
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ----------------------------------- | ---- | ---------------- | | -------- | ----------------------------------- | ---- | ---------------- |
| size | [image.Size](js-apis-image.md#size) | 是 | 缩略图尺寸 | | size | [image.Size](js-apis-image.md#size) | 是 | 缩略图尺寸 |
| callback | AsyncCallback&lt;[image.PixelMap](js-apis-image.md#pixelmap7)&gt; | 是 | 回调返回缩略图的PixelMap | | callback | AsyncCallback&lt;[image.PixelMap](js-apis-image.md#pixelmap7)&gt; | 是 | callback返回缩略图的PixelMap。 |
**示例:** **示例:**
...@@ -1348,13 +1814,13 @@ getThumbnail(size?: image.Size): Promise&lt;image.PixelMap&gt; ...@@ -1348,13 +1814,13 @@ getThumbnail(size?: image.Size): Promise&lt;image.PixelMap&gt;
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| ---- | -------------- | ---- | ----- | | ---- | -------------- | ---- | ----- |
| size | [image.Size](js-apis-image.md#size) | 否 | 缩略图尺寸 | | size | [image.Size](js-apis-image.md#size) | 否 | 缩略图尺寸 |
**返回值:** **返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| ----------------------------- | --------------------- | | ----------------------------- | --------------------- |
| Promise&lt;[image.PixelMap](js-apis-image.md#pixelmap7)&gt; | Promise返回缩略图的PixelMap | | Promise&lt;[image.PixelMap](js-apis-image.md#pixelmap7)&gt; | Promise对象,返回缩略图的PixelMap。 |
**示例:** **示例:**
...@@ -1394,8 +1860,8 @@ favorite(isFavorite: boolean, callback: AsyncCallback&lt;void&gt;): void ...@@ -1394,8 +1860,8 @@ favorite(isFavorite: boolean, callback: AsyncCallback&lt;void&gt;): void
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------------------------- | ---- | ---------------------------------- | | ---------- | ------------------------- | ---- | ---------------------------------- |
| isFavorite | boolean | 是 | 是否设置为收藏文件, true:设置为收藏文件,false:取消收藏 | | isFavorite | boolean | 是 | 是否设置为收藏文件, true:设置为收藏文件,false:取消收藏 |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调返回空 | | callback | AsyncCallback&lt;void&gt; | 是 | callback返回void。 |
**示例:** **示例:**
...@@ -1413,9 +1879,9 @@ async function example() { ...@@ -1413,9 +1879,9 @@ async function example() {
const asset = await fetchResult.getFirstObject(); const asset = await fetchResult.getFirstObject();
asset.favorite(true, (err) => { asset.favorite(true, (err) => {
if (err == undefined) { if (err == undefined) {
console.info("favorite successfully"); console.info('favorite successfully');
} else { } else {
console.error("favorite failed with error:" + err); console.error('favorite failed with error:' + err);
} }
}); });
} }
...@@ -1435,13 +1901,13 @@ favorite(isFavorite: boolean): Promise&lt;void&gt; ...@@ -1435,13 +1901,13 @@ favorite(isFavorite: boolean): Promise&lt;void&gt;
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------- | ---- | ---------------------------------- | | ---------- | ------- | ---- | ---------------------------------- |
| isFavorite | boolean | 是 | 是否设置为收藏文件, true:设置为收藏文件,false:取消收藏 | | isFavorite | boolean | 是 | 是否设置为收藏文件, true:设置为收藏文件,false:取消收藏 |
**返回值:** **返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| ------------------- | ---------- | | ------------------- | ---------- |
| Promise&lt;void&gt; | Promise返回空 | | Promise&lt;void&gt; | Promise对象,返回void。 |
**示例:** **示例:**
...@@ -1458,32 +1924,124 @@ async function example() { ...@@ -1458,32 +1924,124 @@ async function example() {
let fetchResult = await mgr.getPhotoAssets(fetchOption); let fetchResult = await mgr.getPhotoAssets(fetchOption);
const asset = await fetchResult.getFirstObject(); const asset = await fetchResult.getFirstObject();
asset.favorite(true).then(function () { asset.favorite(true).then(function () {
console.info("favorite successfully"); console.info('favorite successfully');
}).catch(function (err) { }).catch(function (err) {
console.error("favorite failed with error:" + err); console.error('favorite failed with error:' + err);
}); });
} }
``` ```
## FetchResult ### setHidden<sup>10+</sup>
文件检索结果集。 setHidden(hiddenState: boolean, callback: AsyncCallback&lt;void&gt;): void
### getCount 将文件设置为隐私文件,使用callback方式返回异步结果。
getCount(): number 隐私文件存在隐私相册中,对三方应用不开放,用户通过隐私相册去获取隐私文件后可以通过设置hiddenState为false来从隐私相册中移除。
获取文件检索结果中的文件总数。 **需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**返回值:** **参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------------------------- | ---- | ---------------------------------- |
| hiddenState | boolean | 是 | 是否设置为隐藏文件,true:将文件资产放入隐藏相册;false:从隐藏相册中恢复。 |
| callback | AsyncCallback&lt;void&gt; | 是 | callback返回void。 |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
console.info('setHiddenDemo');
let predicates = new dataSharePredicates.DataSharePredicates();
let fetchOption = {
fetchColumns: [],
predicates: predicates
};
let fetchResult = await mgr.getPhotoAssets(fetchOption);
const asset = await fetchResult.getFirstObject();
asset.setHidden(true, (err) => {
if (err == undefined) {
console.info('setHidden successfully');
} else {
console.error('setHidden failed with error:' + err);
}
});
}
```
### setHidden<sup>10+</sup>
setHidden(hiddenState: boolean): Promise&lt;void&gt;
将文件设置为隐私文件,使用promise方式返回异步结果。
隐私文件存在隐私相册中,对三方应用不开放,用户通过隐私相册去获取隐私文件后可以通过设置hiddenState为false来从隐私相册中移除。
**需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ---------- | ------- | ---- | ---------------------------------- |
| hiddenState | boolean | 是 | 是否设置为隐藏文件,true:将文件资产放入隐藏相册;false:从隐藏相册中恢复。 |
**返回值:**
| 类型 | 说明 |
| ------------------- | ---------- |
| Promise&lt;void&gt; | Promise对象,返回void。 |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
// 示例代码为将文件从隐藏相册中恢复,需要先在隐藏相册预置资源
console.info('setHiddenDemo');
let predicates = new dataSharePredicates.DataSharePredicates();
let fetchOption = {
fetchColumns: [],
predicates: predicates
};
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);
});
}
```
## FetchResult
文件检索结果集。
### getCount
getCount(): number
获取文件检索结果中的文件总数。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| ------ | -------- | | ------ | -------- |
| number | 检索到的文件总数 | | number | 检索到的文件总数 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
...@@ -1515,7 +2073,7 @@ isAfterLast(): boolean ...@@ -1515,7 +2073,7 @@ isAfterLast(): boolean
| ------- | ---------------------------------- | | ------- | ---------------------------------- |
| boolean | 当读到最后一条记录后,后续没有记录返回true,否则返回false。 | | boolean | 当读到最后一条记录后,后续没有记录返回true,否则返回false。 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
...@@ -1546,7 +2104,7 @@ close(): void ...@@ -1546,7 +2104,7 @@ close(): void
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
...@@ -1576,13 +2134,13 @@ getFirstObject(callback: AsyncCallback&lt;T&gt;): void ...@@ -1576,13 +2134,13 @@ getFirstObject(callback: AsyncCallback&lt;T&gt;): void
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | --------------------------------------------- | ---- | ------------------------------------------- | | -------- | --------------------------------------------- | ---- | ------------------------------------------- |
| callback | AsyncCallback&lt;T&gt; | 是 | 异步获取结果集中的第一个完成后的回调 | | callback | AsyncCallback&lt;T&gt; | 是 | 异步获取结果集中的第一个完成后的回调 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
...@@ -1599,7 +2157,7 @@ async function example() { ...@@ -1599,7 +2157,7 @@ async function example() {
if (fileAsset != undefined) { if (fileAsset != undefined) {
console.info('fileAsset displayName: ', fileAsset.displayName); console.info('fileAsset displayName: ', fileAsset.displayName);
} else { } else {
console.error("fileAsset failed with err:" + err); console.error('fileAsset failed with err:' + err);
} }
}); });
} }
...@@ -1617,9 +2175,9 @@ getFirstObject(): Promise&lt;T&gt; ...@@ -1617,9 +2175,9 @@ getFirstObject(): Promise&lt;T&gt;
| 类型 | 说明 | | 类型 | 说明 |
| --------------------------------------- | -------------------------- | | --------------------------------------- | -------------------------- |
| Promise&lt;T&gt; | Promise方式返回 | | Promise&lt;T&gt; | Promise对象,返回结果集中第一个对象。 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
...@@ -1645,13 +2203,13 @@ async function example() { ...@@ -1645,13 +2203,13 @@ async function example() {
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| --------- | --------------------------------------------- | ---- | ----------------------------------------- | | --------- | --------------------------------------------- | ---- | ----------------------------------------- |
| callbacke | AsyncCallback&lt;T&gt; | 是 | 异步返回结果集中下一个之后的回调 | | callbacke | AsyncCallback&lt;T&gt; | 是 | 异步返回结果集中下一个之后的回调 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
...@@ -1670,7 +2228,7 @@ async function example() { ...@@ -1670,7 +2228,7 @@ async function example() {
if (fileAsset != undefined) { if (fileAsset != undefined) {
console.info('fileAsset displayName: ', fileAsset.displayName); console.info('fileAsset displayName: ', fileAsset.displayName);
} else { } else {
console.error("fileAsset failed with err: " + err); console.error('fileAsset failed with err: ' + err);
} }
}); });
} }
...@@ -1689,9 +2247,9 @@ async function example() { ...@@ -1689,9 +2247,9 @@ async function example() {
| 类型 | 说明 | | 类型 | 说明 |
| --------------------------------------- | ----------------- | | --------------------------------------- | ----------------- |
| Promise&lt;T&gt; | 返回结果集中下一个对象 | | Promise&lt;T&gt; | Promise对象,返回结果集中下一个对象。 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
...@@ -1720,13 +2278,13 @@ getLastObject(callback: AsyncCallback&lt;T&gt;): void ...@@ -1720,13 +2278,13 @@ getLastObject(callback: AsyncCallback&lt;T&gt;): void
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | --------------------------------------------- | ---- | --------------------------- | | -------- | --------------------------------------------- | ---- | --------------------------- |
| callback | AsyncCallback&lt;T&gt; | 是 | 异步返回结果集中最后一个的回调 | | callback | AsyncCallback&lt;T&gt; | 是 | 异步返回结果集中最后一个的回调 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
...@@ -1743,7 +2301,7 @@ async function example() { ...@@ -1743,7 +2301,7 @@ async function example() {
if (fileAsset != undefined) { if (fileAsset != undefined) {
console.info('fileAsset displayName: ', fileAsset.displayName); console.info('fileAsset displayName: ', fileAsset.displayName);
} else { } else {
console.error("fileAsset failed with err: " + err); console.error('fileAsset failed with err: ' + err);
} }
}); });
} }
...@@ -1761,9 +2319,9 @@ getLastObject(): Promise&lt;T&gt; ...@@ -1761,9 +2319,9 @@ getLastObject(): Promise&lt;T&gt;
| 类型 | 说明 | | 类型 | 说明 |
| --------------------------------------- | ----------------- | | --------------------------------------- | ----------------- |
| Promise&lt;T&gt; | 返回结果集中最后一个对象 | | Promise&lt;T&gt; | Promise对象,返回结果集中最后一个对象。 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
...@@ -1789,257 +2347,724 @@ getPositionObject(index: number, callback: AsyncCallback&lt;T&gt;): void ...@@ -1789,257 +2347,724 @@ getPositionObject(index: number, callback: AsyncCallback&lt;T&gt;): void
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ---------------------------------------- | ---- | ------------------ |
| index | number | 是 | 要获取的文件的索引,从0开始。 |
| callback | AsyncCallback&lt;T&gt; | 是 | 异步返回指定索引的文件资产的回调。 |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
console.info('getPositionObjectDemo');
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);
} else {
console.error('fileAsset failed with err: ' + err);
}
});
}
```
### getPositionObject
getPositionObject(index: number): Promise&lt;T&gt;
获取文件检索结果中具有指定索引的文件资产。此方法使用Promise形式返回文件Asset。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| ----- | ------ | ---- | -------------- |
| index | number | 是 | 要获取的文件的索引,从0开始。 |
**返回值:**
| 类型 | 说明 |
| --------------------------------------- | ----------------- |
| Promise&lt;T&gt; | Promise对象,返回结果集中指定索引的一个对象。 |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
console.info('getPositionObjectDemo');
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);
}
```
### getAllObject<sup>10+</sup>
getAllObject(callback: AsyncCallback&lt;Array&lt;T&gt;&gt;): void
获取文件检索结果中的所有文件资产。此方法使用callback形式返回结果。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | --------------------------------------------- | ---- | ------------------------------------------- |
| callback | AsyncCallback&lt;Array&lt;T&gt;&gt; | 是 | 异步获取结果集中的所有文件资产完成后的回调。 |
**示例:**
```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);
fetchResult.getAllObject((err, fileAssetList) => {
if (fileAssetList != undefined) {
console.info('fileAssetList length: ', fileAssetList.length);
} else {
console.error('fileAssetList failed with err:' + err);
}
});
}
```
### getAllObject<sup>10+</sup>
getAllObject(): Promise&lt;Array&lt;T&gt;&gt;
获取文件检索结果中的所有文件资产。此方法使用promise方式来异步返回。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**返回值:**
| 类型 | 说明 |
| --------------------------------------- | -------------------------- |
| Promise&lt;Array&lt;T&gt;&gt; | 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);
let fileAssetList = await fetchResult.getAllObject();
console.info('fileAssetList length: ', fileAssetList.length);
}
```
## Album
实体相册
### 属性
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ------------ | ------ | ---- | ---- | ------- |
| albumType<sup>8+</sup> | [AlbumType]( #albumtype10) | 是 | 否 | 相册类型。 |
| albumSubType<sup>8+</sup> | [AlbumSubType]( #albumsubtype10) | 是 | 否 | 相册子类型。 |
| albumName | string | 是 | 用户相册可写,预置相册不可写 | 相册名称。 |
| albumUri | string | 是 | 否 | 相册Uri。 |
| count | number | 是 | 否 | 相册中文件数量。 |
| coverUri | string | 是 | 用户相册可写,预置相册不可写 | 封面文件Uri。 |
### getPhotoAssets
getPhotoAssets(options: FetchOptions, callback: AsyncCallback&lt;FetchResult&lt;FileAsset&gt;&gt;): void;
获取相册中的文件。该方法使用callback形式来返回文件。
**需要权限**:ohos.permission.READ_IMAGEVIDEO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| options | [FetchOptions](#fetchoptions) | 是 | 检索选项。 |
| callback | AsyncCallback&lt;[FetchResult](#fetchresult)&lt;[FileAsset](#fileasset)&gt;&gt; | 是 | callback返回图片和视频数据结果集。 |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
console.info('albumGetFileAssetsDemoCallback');
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());
} else {
console.error('album getPhotoAssets failed with error: ' + err);
}
});
}
```
### getPhotoAssets
getPhotoAssets(options: FetchOptions): Promise&lt;FetchResult&lt;FileAsset&gt;&gt;;
获取相册中的文件。该方法使用Promise来返回文件。
**需要权限**:ohos.permission.READ_IMAGEVIDEO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| options | [FetchOptions](#fetchoptions) | 是 | 检索选项。 |
**返回值:**
| 类型 | 说明 |
| --------------------------------------- | ----------------- |
| Promise&lt;[FetchResult](#fetchresult)&lt;[FileAsset](#fileasset)&gt;&gt; | Promise对象,返回图片和视频数据结果集。 |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
console.info('albumGetFileAssetsDemoPromise');
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());
}).catch((err) => {
console.error('album getFileAssets failed with error: ' + err);
});
}
```
### commitModify
commitModify(callback: AsyncCallback&lt;void&gt;): void;
更新相册属性修改到数据库中。该方法使用callback形式来返回结果。
**需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| callback | AsyncCallback&lt;void&gt; | 是 | callback返回void。 |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
console.info('albumCommitModifyDemo');
let predicates = new dataSharePredicates.DataSharePredicates();
let albumFetchOptions = {
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);
} else {
console.info('commitModify successfully');
}
});
}
```
### commitModify
commitModify(): Promise&lt;void&gt;;
更新相册属性修改到数据库中。该方法使用Promise来返回结果。
**需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**返回值:**
| 类型 | 说明 |
| ------------------- | ------------ |
| Promise&lt;void&gt; | Promise对象,返回void。 |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
console.info('albumCommitModifyDemo');
let predicates = new dataSharePredicates.DataSharePredicates();
let albumFetchOptions = {
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');
}).catch((err) => {
console.error('commitModify failed with error: ' + err);
});
}
```
### addPhotoAssets<sup>10+</sup>
addPhotoAssets(assets: Array&lt;FileAsset&gt;, callback: AsyncCallback&lt;void&gt;): void;
往相册中添加图片或者视频,需要先预置相册和文件资源。该方法使用callback形式来返回结果。
**需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| assets | Array&lt;[FileAsset](#fileasset)&gt; | 是 | 待添加到相册中的图片或视频数组。 |
| callback | AsyncCallback&lt;void&gt; | 是 | callback返回void。 |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
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);
let asset = await fetchResult.getFirstObject();
album.addPhotoAssets([asset], (err) => {
if (err === undefined) {
console.info('album addPhotoAssets successfully');
} else {
console.error('album addPhotoAssets failed with error: ' + err);
}
});
} catch (err) {
console.error('addPhotoAssetsDemoCallback failed with error: ' + err);
}
}
```
### addPhotoAssets<sup>10+</sup>
addPhotoAssets(assets: Array&lt;FileAsset&gt;): Promise&lt;void&gt;;
往相册中添加图片或者视频,需要先预置相册和文件资源。该方法使用Promise来返回结果。
**需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| assets | Array&lt;[FileAsset](#fileasset)&gt; | 是 | 待添加到相册中的图片或视频数组。 |
**返回值:**
| 类型 | 说明 |
| --------------------------------------- | ----------------- |
|Promise&lt;void&gt; | Promise对象,返回void。 |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
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 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);
}
}
```
### removePhotoAssets<sup>10+</sup>
removePhotoAssets(assets: Array&lt;FileAsset&gt;, callback: AsyncCallback&lt;void&gt;): void;
从相册中移除图片或者视频,需要先预置相册和文件资源。该方法使用callback形式来返回结果。
**需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ---------------------------------------- | ---- | ------------------ | | -------- | ------------------------- | ---- | ---------- |
| index | number | 是 | 要获取的文件的索引,从0开始 | | assets | Array&lt;[FileAsset](#fileasset)&gt; | 是 | 相册中待移除的图片或视频数组。 |
| callback | AsyncCallback&lt;T&gt; | 是 | 异步返回指定索引的文件资产的回调 | | callback | AsyncCallback&lt;void&gt; | 是 | callback返回void。 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() { async function example() {
console.info('getPositionObjectDemo'); try {
let predicates = new dataSharePredicates.DataSharePredicates(); console.info('removePhotoAssetsDemoCallback');
let fetchOption = { let predicates = new dataSharePredicates.DataSharePredicates();
fetchColumns: [], let fetchOption = {
predicates: predicates fetchColumns: [],
}; predicates: predicates
let fetchResult = await mgr.getPhotoAssets(fetchOption); };
fetchResult.getPositionObject(0, (err, fileAsset) => { let albumFetchResult = await mgr.getAlbums(userFileManager.AlbumType.USER, userFileManager.AlbumSubType.USER_GENERIC);
if (fileAsset != undefined) { let album = await albumFetchResult.getFirstObject();
console.info('fileAsset displayName: ', fileAsset.displayName); let fetchResult = await album.getPhotoAssets(fetchOption);
} else { let asset = await fetchResult.getFirstObject();
console.error("fileAsset failed with err: " + err); album.removePhotoAssets([asset], (err) => {
} if (err === undefined) {
}); console.info('album removePhotoAssets successfully');
} else {
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&lt;T&gt; removePhotoAssets(assets: Array&lt;FileAsset&gt;): Promise&lt;void&gt;;
获取文件检索结果中具有指定索引的文件资产。此方法使用Promise形式返回文件Asset。 从相册中移除图片或者视频,需要先预置相册和文件资源。该方法使用Promise来返回结果。
**需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| ----- | ------ | ---- | -------------- | | -------- | ------------------------- | ---- | ---------- |
| index | number | 是 | 要获取的文件的索引,从0开始 | | assets | Array&lt;[FileAsset](#fileasset)&gt; | 是 | 相册中待移除的图片或视频数组。 |
**返回值:** **返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| --------------------------------------- | ----------------- | | --------------------------------------- | ----------------- |
| Promise&lt;T&gt; | 返回指定索引的文件资产的对象 | |Promise&lt;void&gt; | Promise对象,返回void。 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() { async function example() {
console.info('getPositionObjectDemo'); try {
let predicates = new dataSharePredicates.DataSharePredicates(); console.info('removePhotoAssetsDemoPromise');
let fetchOption = { let predicates = new dataSharePredicates.DataSharePredicates();
fetchColumns: [], let fetchOption = {
predicates: predicates fetchColumns: [],
}; predicates: predicates
let fetchResult = await mgr.getPhotoAssets(fetchOption); };
let fileAsset = await fetchResult.getPositionObject(0); let albumFetchResult = await mgr.getAlbums(userFileManager.AlbumType.USER, userFileManager.AlbumSubType.USER_GENERIC);
console.info('fileAsset displayName: ', fileAsset.displayName); 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 ### recoverPhotoAssets<sup>10+</sup>
实体相册
### 属性
**系统能力:** 以下各项对应的系统能力均为SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 可读 | 可写 | 说明 |
| ------------ | ------ | ---- | ---- | ------- |
| albumName | string | 是 | 是 | 相册名称 |
| albumUri | string | 是 | 否 | 相册Uri |
| dateModified | number | 是 | 否 | 修改日期 |
| count | number | 是 | 否 | 相册中文件数量 |
| coverUri | string | 是 | 否 | 封面文件Uri
### getPhotoAssets
getPhotoAssets(options: FetchOptions, callback: AsyncCallback&lt;FetchResult&lt;FileAsset&gt;&gt;): void; recoverPhotoAssets(assets: Array&lt;FileAsset&gt;, callback: AsyncCallback&lt;void&gt;): void;
获取相册中的文件。该方法使用callback形式来返回文件 从回收站中恢复图片或者视频,需要先在回收站中预置文件资源。该方法使用callback形式来返回结果
**需要权限**:ohos.permission.READ_IMAGEVIDEO **需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- | | -------- | ------------------------- | ---- | ---------- |
| options | [FetchOptions](#fetchoptions) | 是 | 检索选项 | | assets | Array&lt;[FileAsset](#fileasset)&gt; | 是 | 回收站中待恢复图片或者视频数组。 |
| callback | AsyncCallback&lt;[FetchResult](#fetchresult)&lt;[FileAsset](#fileasset)&gt;&gt; | 是 | callback 返回图片和视频数据结果集| | callback | AsyncCallback&lt;void&gt; | 是 | callback返回void。 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() { async function example() {
console.info('albumGetFileAssetsDemoCallback'); try {
console.info('recoverPhotoAssetsDemoCallback');
let predicates = new dataSharePredicates.DataSharePredicates(); let predicates = new dataSharePredicates.DataSharePredicates();
let albumFetchOptions = { let fetchOption = {
predicates: predicates fetchColumns: [],
}; predicates: predicates
let fetchOption = { };
fetchColumns: [], let albumFetchResult = await mgr.getAlbums(userFileManager.AlbumType.SYSTEM, userFileManager.AlbumSubType.TRASH);
predicates: predicates let album = await albumFetchResult.getFirstObject();
}; let fetchResult = await album.getPhotoAssets(fetchOption);
const albumList = await mgr.getPhotoAlbums(albumFetchOptions); let asset = await fetchResult.getFirstObject();
const album = await albumList.getFirstObject(); album.recoverPhotoAssets([asset], (err) => {
album.getPhotoAssets(fetchOption, (err, albumFetchResult) => { if (err === undefined) {
if (albumFetchResult != undefined) { console.info('album recoverPhotoAssets successfully');
console.info("album getPhotoAssets successfully, getCount: " + albumFetchResult.getCount()); } else {
} else { console.error('album recoverPhotoAssets failed with error: ' + err);
console.error("album getPhotoAssets failed with error: " + err); }
} });
}); } catch (err) {
console.error('recoverPhotoAssetsDemoCallback failed with error: ' + err);
}
} }
``` ```
### getPhotoAssets ### recoverPhotoAssets<sup>10+</sup>
getPhotoAssets(options: FetchOptions): Promise&lt;FetchResult&lt;FileAsset&gt;&gt;; recoverPhotoAssets(assets: Array&lt;FileAsset&gt;): Promise&lt;void&gt;;
获取相册中的文件。该方法使用Promise来返回文件 从回收站中恢复图片或者视频,需要先在回收站中预置文件资源。该方法使用Promise来返回结果
**需要权限**:ohos.permission.READ_IMAGEVIDEO **需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- | | -------- | ------------------------- | ---- | ---------- |
| options | [FetchOptions](#fetchoptions) | 是 | 检索选项 | | assets | Array&lt;[FileAsset](#fileasset)&gt; | 是 | 回收站中待恢复图片或者视频数组。 |
| Promise | [FetchResult](#fetchresult)&lt;[FileAsset](#fileasset)&gt; | 是 | 图片和视频数据结果集 |
**返回值:**
**示例** | 类型 | 说明 |
| --------------------------------------- | ----------------- |
|Promise&lt;void&gt; | Promise对象,返回void。 |
**示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() { async function example() {
console.info('albumGetFileAssetsDemoPromise'); try {
console.info('recoverPhotoAssetsDemoPromise');
let predicates = new dataSharePredicates.DataSharePredicates(); let predicates = new dataSharePredicates.DataSharePredicates();
let albumFetchOptions = { let fetchOption = {
predicates: predicates fetchColumns: [],
}; predicates: predicates
let fetchOption = { };
fetchColumns: [], let albumFetchResult = await mgr.getAlbums(userFileManager.AlbumType.SYSTEM, userFileManager.AlbumSubType.TRASH);
predicates: predicates let album = await albumFetchResult.getFirstObject();
}; let fetchResult = await album.getPhotoAssets(fetchOption);
const albumList = await mgr.getPhotoAlbums(albumFetchOptions); let asset = await fetchResult.getFirstObject();
const album = await albumList.getFirstObject(); album.recoverPhotoAssets([asset]).then(() => {
album.getPhotoAssets(fetchOption).then((albumFetchResult) => { console.info('album recoverPhotoAssets successfully');
console.info("album getFileAssets successfully, getCount: " + albumFetchResult.getCount()); }).catch((err) => {
}).catch((err) => { console.error('album recoverPhotoAssets failed with error: ' + err);
console.error("album getFileAssets failed with error: " + err); });
}); } catch (err) {
console.error('recoverPhotoAssetsDemoPromise failed with error: ' + err);
}
} }
``` ```
### commitModify ### deletePhotoAssets<sup>10+</sup>
commitModify(callback: AsyncCallback&lt;void&gt;): void; deletePhotoAssets(assets: Array&lt;FileAsset&gt;, callback: AsyncCallback&lt;void&gt;): void;
更新相册属性修改到数据库中。 从回收站中彻底删除图片或者视频,需要先在回收站中预置文件资源。该方法使用callback形式来返回结果。
**注意**:此操作不可逆,执行此操作后文件资源将彻底删除,请谨慎操作。
**需要权限**:ohos.permission.WRITE_IMAGEVIDEO **需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- | | -------- | ------------------------- | ---- | ---------- |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调返回空 | | assets | Array&lt;[FileAsset](#fileasset)&gt; | 是 | 回收站中待彻底删除图片或者视频数组。 |
| callback | AsyncCallback&lt;void&gt; | 是 | callback返回void。 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() { async function example() {
console.info('albumCommitModifyDemo'); try {
let predicates = new dataSharePredicates.DataSharePredicates(); console.info('deletePhotoAssetsDemoCallback');
let albumFetchOptions = { let predicates = new dataSharePredicates.DataSharePredicates();
predicates: predicates let fetchOption = {
}; fetchColumns: [],
const albumList = await mgr.getPhotoAlbums(albumFetchOptions); predicates: predicates
const album = await albumList.getFirstObject(); };
album.albumName = 'hello'; let albumFetchResult = await mgr.getAlbums(userFileManager.AlbumType.SYSTEM, userFileManager.AlbumSubType.TRASH);
album.commitModify((err) => { let album = await albumFetchResult.getFirstObject();
if (err != undefined) { let fetchResult = await album.getPhotoAssets(fetchOption);
console.error("commitModify failed with error: " + err); let asset = await fetchResult.getFirstObject();
} else { album.deletePhotoAssets([asset], (err) => {
console.info("commitModify successfully"); if (err === undefined) {
} console.info('album deletePhotoAssets successfully');
}); } else {
console.error('album deletePhotoAssets failed with error: ' + err);
}
});
} catch (err) {
console.error('deletePhotoAssetsDemoCallback failed with error: ' + err);
}
} }
``` ```
### commitModify ### deletePhotoAssets<sup>10+</sup>
commitModify(): Promise&lt;void&gt;; deletePhotoAssets(assets: Array&lt;FileAsset&gt;): Promise&lt;void&gt;;
从回收站中彻底删除图片或者视频,需要先在回收站中预置文件资源。该方法使用Promise来返回结果。
更新相册属性修改到数据库中 **注意**:此操作不可逆,执行此操作后文件资源将彻底删除,请谨慎操作
**需要权限**:ohos.permission.WRITE_IMAGEVIDEO **需要权限**:ohos.permission.WRITE_IMAGEVIDEO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- |
| assets | Array&lt;[FileAsset](#fileasset)&gt; | 是 | 回收站中待彻底删除图片或者视频数组。 |
**返回值:** **返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| ------------------- | ------------ | | --------------------------------------- | ----------------- |
| Promise&lt;void&gt; | Promise调用返回空 | |Promise&lt;void&gt; | Promise对象,返回void。 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() { async function example() {
console.info('albumCommitModifyDemo');
let predicates = new dataSharePredicates.DataSharePredicates();
let albumFetchOptions = {
predicates: predicates
};
try { try {
var albumList = await mgr.getPhotoAlbums(albumFetchOptions); console.info('deletePhotoAssetsDemoPromise');
let predicates = new dataSharePredicates.DataSharePredicates();
let fetchOption = {
fetchColumns: [],
predicates: predicates
};
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('album deletePhotoAssets failed with error: ' + err);
});
} catch (err) { } catch (err) {
console.error('getPhotoAlbums failed. message = ', err); console.error('deletePhotoAssetsDemoPromise failed with error: ' + 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);
});
} }
``` ```
...@@ -2049,15 +3074,15 @@ async function example() { ...@@ -2049,15 +3074,15 @@ async function example() {
### 属性 ### 属性
**系统能力:** 以下各项对应的系统能力均为SystemCapability.FileManagement.UserFileManager.Core **系统能力**SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 可读 | 可写 | 说明 | | 名称 | 类型 | 可读 | 可写 | 说明 |
| ------------ | ------ | ---- | ---- | ------- | | ------------ | ------ | ---- | ---- | ------- |
| albumName | string | 是 | 是 | 相册名称 | | albumName | string | 是 | 是 | 相册名称 |
| albumUri | string | 是 | 否 | 相册Uri | | albumUri | string | 是 | 否 | 相册Uri |
| dateModified | number | 是 | 否 | 修改日期 | | dateModified | number | 是 | 否 | 修改日期 |
| count | number | 是 | 否 | 相册中文件数量 | | count | number | 是 | 否 | 相册中文件数量 |
| coverUri | string | 是 | 否 | 封面文件Uri | coverUri | string | 是 | 否 | 封面文件Uri。 |
### getPhotoAssets ### getPhotoAssets
...@@ -2069,14 +3094,14 @@ getPhotoAssets(options: FetchOptions, callback: AsyncCallback&lt;FetchResult&lt; ...@@ -2069,14 +3094,14 @@ getPhotoAssets(options: FetchOptions, callback: AsyncCallback&lt;FetchResult&lt;
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- | | -------- | ------------------------- | ---- | ---------- |
| options | [FetchOptions](#fetchoptions) | 是 | 检索选项 | | options | [FetchOptions](#fetchoptions) | 是 | 检索选项 |
| callback | AsyncCallback&lt;[FetchResult](#fetchresult)&lt;[FileAsset](#fileasset)&gt;&gt; | 是 | callback返回图片和视频数据结果集 | | callback | AsyncCallback&lt;[FetchResult](#fetchresult)&lt;[FileAsset](#fileasset)&gt;&gt; | 是 | callback返回图片和视频数据结果集 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
...@@ -2112,19 +3137,19 @@ getPhotoAssets(options: FetchOptions): Promise&lt;FetchResult&lt;FileAsset&gt;&g ...@@ -2112,19 +3137,19 @@ getPhotoAssets(options: FetchOptions): Promise&lt;FetchResult&lt;FileAsset&gt;&g
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- | | -------- | ------------------------- | ---- | ---------- |
| options | [FetchOptions](#fetchoptions) | 是 | 检索选项 | | options | [FetchOptions](#fetchoptions) | 是 | 检索选项 |
**返回值:** **返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| --------------------------------------- | ----------------- | | --------------------------------------- | ----------------- |
| Promise:[FetchResult](#fetchresult)&lt;[FileAsset](#fileasset)&gt;| 图片和视频数据结果集 | | Promise:[FetchResult](#fetchresult)&lt;[FileAsset](#fileasset)&gt;| Promise对象,返回图片和视频数据结果集。 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
...@@ -2154,14 +3179,14 @@ delete(uri: string, callback: AsyncCallback&lt;void&gt;): void; ...@@ -2154,14 +3179,14 @@ delete(uri: string, callback: AsyncCallback&lt;void&gt;): void;
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- | | -------- | ------------------------- | ---- | ---------- |
| uri | string | 是 | 相册uri | | uri | string | 是 | 相册uri |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调返回空 | | callback | AsyncCallback&lt;void&gt; | 是 | callback返回void。 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
...@@ -2198,19 +3223,19 @@ delete(uri: string): Promise&lt;void&gt;; ...@@ -2198,19 +3223,19 @@ delete(uri: string): Promise&lt;void&gt;;
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- | | -------- | ------------------------- | ---- | ---------- |
| uri | string | 是 | 相册uri | | uri | string | 是 | 相册uri |
**返回值:** **返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| --------------------------------------- | ----------------- | | --------------------------------------- | ----------------- |
| Promise&lt;void&gt;| 回调返回空 | | Promise&lt;void&gt;| Promise对象,返回void。 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
...@@ -2245,14 +3270,14 @@ recover(uri: string, callback: AsyncCallback&lt;void&gt;): void; ...@@ -2245,14 +3270,14 @@ recover(uri: string, callback: AsyncCallback&lt;void&gt;): void;
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- | | -------- | ------------------------- | ---- | ---------- |
| uri | string | 是 | 相册uri | | uri | string | 是 | 相册uri |
| callback | AsyncCallback&lt;void&gt; | 是 | 回调返回空 | | callback | AsyncCallback&lt;void&gt; | 是 | callback返回void。 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
...@@ -2289,19 +3314,19 @@ recover(uri: string): Promise&lt;void&gt;; ...@@ -2289,19 +3314,19 @@ recover(uri: string): Promise&lt;void&gt;;
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core **系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数** **参数:**
| 参数名 | 类型 | 必填 | 说明 | | 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ---------- | | -------- | ------------------------- | ---- | ---------- |
| uri | string | 是 | 相册uri | | uri | string | 是 | 相册uri |
**返回值:** **返回值:**
| 类型 | 说明 | | 类型 | 说明 |
| --------------------------------------- | ----------------- | | --------------------------------------- | ----------------- |
| Promise&lt;void&gt;| 回调返回空 | | Promise&lt;void&gt;| Promise对象,返回void。 |
**示例** **示例:**
```ts ```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates'; import dataSharePredicates from '@ohos.data.dataSharePredicates';
...@@ -2330,134 +3355,199 @@ async function example() { ...@@ -2330,134 +3355,199 @@ async function example() {
成员类型。 成员类型。
**系统能力:** 以下各项对应的系统能力均为SystemCapability.FileManagement.UserFileManager.Core **系统能力**SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 可读 | 可写 | 说明 | | 名称 | 类型 | 可读 | 可写 | 说明 |
| ----- | ---- | ---- | ---- | ---- | | ----- | ---- | ---- | ---- | ---- |
| number | number | 是 | 是 | number类型 | | number | number | 是 | 是 | number类型 |
| string | string | 是 | 是 | string类型 | | string | string | 是 | 是 | string类型|
| boolean | boolean | 是 | 是 | boolean类型 | | boolean | boolean | 是 | 是 | boolean类型 |
## ChangeEvent ## ChangeEvent
变更监听的媒体文件类型。 变更监听的媒体文件类型。
**系统能力:** 以下各项对应的系统能力均为SystemCapability.FileManagement.UserFileManager.Core **系统能力**SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 可读 | 可写 | 说明 | | 名称 | 类型 | 可读 | 可写 | 说明 |
| ----- | ---- | ---- | ---- | ---- | | ----- | ---- | ---- | ---- | ---- |
| deviceChange | string | 是 | 是 | 设备 | | deviceChange | string | 是 | 是 | 设备 |
| albumChange | string | 是 | 是 | 相册 | | albumChange | string | 是 | 是 | 相册 |
| imageChange | string | 是 | 是 | 图片 | | imageChange | string | 是 | 是 | 图片 |
| audioChange | string | 是 | 是 | 音频 | | audioChange | string | 是 | 是 | 音频 |
| videoChange | string | 是 | 是 | 视频 | | videoChange | string | 是 | 是 | 视频 |
| remoteFileChange | string | 是 | 是 | 远程文件 | | remoteFileChange | string | 是 | 是 | 远程文件 |
## PeerInfo ## PeerInfo
注册设备的信息。 注册设备的信息。
**系统能力:** 以下各项对应的系统能力均为SystemCapability.FileManagement.UserFileManager.DistributedCore **系统能力**SystemCapability.FileManagement.UserFileManager.DistributedCore
| 名称 | 类型 | 可读 | 可写 | 说明 | | 名称 | 类型 | 可读 | 可写 | 说明 |
| ---------- | -------------------------- | ---- | ---- | ---------------- | | ---------- | -------------------------- | ---- | ---- | ---------------- |
| deviceName | string | 是 | 否 | 注册设备的名称 | | deviceName | string | 是 | 否 | 注册设备的名称 |
| networkId | string | 是 | 否 | 注册设备的网络ID | | networkId | string | 是 | 否 | 注册设备的网络ID |
| isOnline | boolean | 是 | 否 | 是否在线 | | isOnline | boolean | 是 | 否 | 是否在线 |
## FileType ## 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 | 图片 | | USER_GENERIC | 1 | 用户相册。 |
| VIDEO | 2 | 视频 | | FAVORITE | 1025 | 收藏夹。 |
| AUDIO | 3 | 音频 | | VIDEO | 1026 | 视频相册。 |
| HIDDEN | 1027 | 隐藏相册。 |
| TRASH | 1028 | 回收站。 |
| SCREENSHOT | 1029 | 截屏和录屏相册。 |
| CAMERA | 1030 | 相机拍摄的照片和视频相册。 |
| ANY | 2147483647 | 任意相册。 |
## PrivateAlbumType ## PrivateAlbumType
枚举,系统相册类型。 枚举,系统相册类型。
**系统能力:** 以下各项对应的系统能力均为SystemCapability.FileManagement.UserFileManager.Core **系统能力**SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 值 | 说明 | | 名称 | 值 | 说明 |
| ----- | ---- | ---- | | ----- | ---- | ---- |
| TYPE_FAVORITE | 0 | 收藏夹相册 | | TYPE_FAVORITE | 0 | 收藏夹相册 |
| TYPE_TRASH | 1 | 回收站相册 | | TYPE_TRASH | 1 | 回收站相册 |
## AudioKey ## AudioKey
枚举,音频文件关键信息。 枚举,音频文件关键信息。
**系统能力:** 以下各项对应的系统能力均为SystemCapability.FileManagement.UserFileManager.Core **系统能力**SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 值 | 说明 | | 名称 | 值 | 说明 |
| ------------- | ------------------- | ---------------------------------------------------------- | | ------------- | ------------------- | ---------------------------------------------------------- |
| URI | uri | 文件uri | | URI | uri | 文件uri |
| DISPLAY_NAME | display_name | 显示名字 | | DISPLAY_NAME | display_name | 显示名字 |
| DATE_ADDED | date_added | 添加日期(添加文件时间到1970年1月1日的秒数值) | | DATE_ADDED | date_added | 添加日期(添加文件时间距1970年1月1日的秒数值)。 |
| DATE_MODIFIED | date_modified | 修改日期(修改文件时间到1970年1月1日的秒数值,修改文件名不会改变此值,当文件内容发生修改时才会更新) | | DATE_MODIFIED | date_modified | 修改日期(修改文件时间距1970年1月1日的秒数值,修改文件名不会改变此值,当文件内容发生修改时才会更新)。 |
| TITLE | title | 文件标题 | | TITLE | title | 文件标题 |
| ARTIST | artist | 作者 | | ARTIST | artist | 作者 |
| AUDIOALBUM | audio_album | 专辑 | | AUDIOALBUM | audio_album | 专辑 |
| DURATION | duration | 持续时间(单位:毫秒) | | DURATION | duration | 持续时间(单位:毫秒) |
| FAVORITE | favorite | 收藏 | | FAVORITE | favorite | 收藏 |
## ImageVideoKey ## ImageVideoKey
枚举,图片和视频文件关键信息。 枚举,图片和视频文件关键信息。
**系统能力:** 以下各项对应的系统能力均为SystemCapability.FileManagement.UserFileManager.Core **系统能力**SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 值 | 说明 | | 名称 | 值 | 说明 |
| ------------- | ------------------- | ---------------------------------------------------------- | | ------------- | ------------------- | ---------------------------------------------------------- |
| URI | uri | 文件uri | | URI | uri | 文件uri。 |
| FILE_TYPE | file_type | 媒体文件类型 | | FILE_TYPE | file_type | 媒体文件类型。 |
| DISPLAY_NAME | display_name | 显示名字 | | DISPLAY_NAME | display_name | 显示名字。 |
| DATE_ADDED | date_added | 添加日期(添加文件时间到1970年1月1日的秒数值) | | DATE_ADDED | date_added | 添加日期(添加文件时间距1970年1月1日的秒数值)。 |
| DATE_MODIFIED | date_modified | 修改日期(修改文件时间到1970年1月1日的秒数值,修改文件名不会改变此值,当文件内容发生修改时才会更新) | | DATE_MODIFIED | date_modified | 修改日期(修改文件时间距1970年1月1日的秒数值,修改文件名不会改变此值,当文件内容发生修改时才会更新)。 |
| TITLE | title | 文件标题 | | TITLE | title | 文件标题。 |
| DURATION | duration | 持续时间(单位:毫秒) | | DURATION | duration | 持续时间(单位:毫秒)。 |
| WIDTH | width | 图片宽度(单位:像素) | | WIDTH | width | 图片宽度(单位:像素)。 |
| HEIGHT | height | 图片高度(单位:像素) | | HEIGHT | height | 图片高度(单位:像素)。 |
| DATE_TAKEN | date_taken | 拍摄日期(文件拍照时间到1970年1月1日的秒数值) | | DATE_TAKEN | date_taken | 拍摄日期(文件拍照时间距1970年1月1日的秒数值)。 |
| ORIENTATION | orientation | 图片文件的方向 | | ORIENTATION | orientation | 图片文件的方向。 |
| FAVORITE | favorite | 收藏 | | FAVORITE | favorite | 收藏。 |
| POSITION<sup>10+</sup> | position | 文件位置类型。 |
| DATE_TRASHED<sup>10+</sup> | date_trashed | 删除日期(删除文件时间距1970年1月1日的秒数值)。 |
| HIDDEN<sup>10+</sup> | hidden | 文件的隐藏状态。 |
## AlbumKey ## AlbumKey
枚举,相册关键信息。 枚举,相册关键信息。
**系统能力:** 以下各项对应的系统能力均为SystemCapability.FileManagement.UserFileManager.Core **系统能力**SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 值 | 说明 | | 名称 | 值 | 说明 |
| ------------- | ------------------- | ---------------------------------------------------------- | | ------------- | ------------------- | ---------------------------------------------------------- |
| URI | uri | 相册uri | | URI | uri | 相册uri。 |
| FILE_TYPE | file_type | 媒体文件类型 | | FILE_TYPE | file_type | 媒体文件类型。 |
| ALBUM_NAME | album_name | 相册名字 | | ALBUM_NAME | album_name | 相册名字。 |
| DATE_ADDED | date_added | 添加日期(添加文件时间到1970年1月1日的秒数值) | | DATE_ADDED | date_added | 添加日期(添加文件时间距1970年1月1日的秒数值)。 |
| DATE_MODIFIED | date_modified | 修改日期(修改文件时间到1970年1月1日的秒数值,修改文件名不会改变此值,当文件内容发生修改时才会更新) | | DATE_MODIFIED | date_modified | 修改日期(修改文件时间距1970年1月1日的秒数值,修改文件名不会改变此值,当文件内容发生修改时才会更新)。 |
## PhotoCreateOptions<sup>10+</sup>
图片或视频的创建选项。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 必填 | 说明 |
| ---------------------- | ------------------- | ---- | ------------------------------------------------ |
| subType | [PhotoSubType](#photosubtype10) | 否 | 图片或者视频的子类型。 |
## FetchOptions ## FetchOptions
检索条件。 检索条件。
**系统能力:** 以下各项对应的系统能力均为SystemCapability.FileManagement.UserFileManager.Core **系统能力**SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 类型 | 可读 | 可写 | 说明 | | 名称 | 类型 | 可读 | 可写 | 说明 |
| ---------------------- | ------------------- | ---- |---- | ------------------------------------------------ | | ---------------------- | ------------------- | ---- |---- | ------------------------------------------------ |
| fetchColumns | Array&lt;string&gt; | 是 | 是 | 检索条件,指定列名查询,如果该参数为空时默认查询uri、name、fileType。示例:<br />fetchColumns: "uri"| | fetchColumns | Array&lt;string&gt; | 是 | 是 | 检索条件,指定列名查询,如果该参数为空时默认查询uri、name、fileType(具体字段名称以检索对象定义为准)。示例:<br />fetchColumns: ['uri', 'title']。 |
| predicates | [dataSharePredicates.DataSharePredicates](js-apis-data-dataSharePredicates.md) | 是 | 是 | 谓词查询,显示过滤条件 | | predicates | [dataSharePredicates.DataSharePredicates](js-apis-data-dataSharePredicates.md) | 是 | 是 | 谓词查询,显示过滤条件 |
## AlbumFetchOptions ## 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.
先完成此消息的编辑!
想要评论请 注册