提交 0fe9fba4 编写于 作者: H huweiqi

api update

Signed-off-by: Nhuweiqi <huweiqi1@huawei.com>
Change-Id: I9ad2b885e61ec767afc7eef0c2d578fbfbc3b3ed
上级 e040bbf5
# 媒体资源变更通知相关
# 媒体资源(图片、视频和相册)变更通知相关
photoAccessHelper提供监听媒体资源变更的接口,供开发者对指定媒体资源变更进行监听。
......@@ -12,23 +12,23 @@ photoAccessHelper提供监听媒体资源变更的接口,供开发者对指定
## 监听指定URI
通过调用[registerChange](../reference/apis/js-apis-photoAccessHelper.md#registerchange)接口监听指定URI。当被监听对象发生变更时返回监听器回调函数的值。
通过调用[registerChange](../reference/apis/js-apis-photoAccessHelper.md#registerchange)接口监听指定uri。当被监听对象发生变更时返回监听器回调函数的值。
### 打开对FileAsset的URI的监听
### 对指定FileAsset注册监听
打开对FileAsset的URI的进行监听,当目的FileAsset发生变更时,返回监听器回调函数的值
对指定FileAsset注册监听,当被监听的FileAsset发生变更时,返回监听回调
**前提条件:**
- 获取相册管理模块photoAccessHelper实例。
- 申请相册管理模块权限'ohos.permission.READ_IMAGEVIDEO'和'ohos.permission.WRITE_IMAGEVIDEO'。
下面以打开对一张图片的URI的监听,通过将这张图片设置为收藏触发监听回调为例。
下面以对一张图片注册监听,通过将这张图片设置为收藏触发监听回调为例。
**开发步骤:**
1. [获取指定媒体资源](photoAccessHelper-resource-guidelines.md#获取指定媒体资源)
2. 打开对指定媒体资源URI的监听。
2. 对指定FileAsset注册监听。
3. 将指定媒体资源设置为收藏。
```ts
......@@ -58,22 +58,22 @@ try {
}
```
### 打开对Album的URI的监听
### 对指定Album注册监听
打开对Album的URI的进行监听,当目的Album发生变更时,返回监听器回调函数的值
对指定Album注册监听,当被监听的Album发生变更时,返回监听回调
**前提条件:**
- 获取相册管理模块photoAccessHelper实例。
- 申请相册管理模块权限'ohos.permission.READ_IMAGEVIDEO'和'ohos.permission.WRITE_IMAGEVIDEO'。
下面以打开对一个用户相册的URI的监听,通过将重名名这个相册触发监听回调为例。
下面以对一个用户相册注册监听,通过重命名相册触发监听回调为例。
**开发步骤:**
1. [获取用户相册](photoAccessHelper-userAlbum-guidelines.md#获取用户相册)
2. 打开对指定用户相册URI的监听。
3. 将指定用户相册重名。
2. 对指定Album注册监听。
3. 将指定用户相册重名。
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
......@@ -106,22 +106,22 @@ try {
## 模糊监听
通过设置forChildUris值为true来打开模糊监听,URI为相册URI时,forChildUris为true能监听到相册中文件的变化,如果是false只能监听相册本身变化。URI为fileAsset时,forChildUris为true、false没有区别,URI为DefaultChangeUri时,forChildUris必须为true,如果为false将找不到该URI,收不到任何消息。
通过设置forChildUris值为true来注册模糊监听,uri为相册uri时,forChildUris为true能监听到相册中文件的变化,如果是false只能监听相册本身变化。uri为fileAsset时,forChildUris为true、false没有区别,uri为DefaultChangeUri时,forChildUris必须为true,如果为false将找不到该uri,收不到任何消息。
### 打开对所有FileAsset的URI的监听
### 对所有FileAsset注册监听
打开对所有FileAsset的URI的进行监听,当有FileAsset发生变更时,返回监听器回调函数的值
对所有FileAsset注册监听,当有被监听的FileAsset发生变更时,返回监听回调
**前提条件:**
- 获取相册管理模块photoAccessHelper实例。
- 申请相册管理模块权限'ohos.permission.READ_IMAGEVIDEO'和'ohos.permission.WRITE_IMAGEVIDEO'。
下面以打开所有FileAsset的URI的监听,通过将一张图片进行设置和取消收藏触发监听回调为例。
下面以对所有FileAsset注册监听,对被监听的FileAsset设置为收藏触发监听回调为例。
**开发步骤:**
1. 打开对所有FileAsset的URI的监听。
1. 对所有FileAsset注册监听。
2. [获取指定媒体资源](photoAccessHelper-resource-guidelines.md#获取指定媒体资源)
3. 将指定媒体资源设置为收藏。
......@@ -150,21 +150,21 @@ try {
}
```
## 关闭对指定URI的监听
## 取消对指定URI的监听
关闭指定URI的监听,通过调用[unRegisterChange](../reference/apis/js-apis-photoAccessHelper.md#unregisterchange)接口关闭对指定URI的监听。一个URI可以注册多个监听,存在多个callback监听时,可以取消指定注册的callback的监听;不指定callback时解除该URI的所有监听。
取消对指定uri的监听,通过调用[unRegisterChange](../reference/apis/js-apis-photoAccessHelper.md#unregisterchange)接口取消对指定uri的监听。一个uri可以注册多个监听,存在多个callback监听时,可以取消指定注册的callback的监听;不指定callback时取消该uri的所有监听。
**前提条件:**
- 获取相册管理模块photoAccessHelper实例。
- 申请相册管理模块权限'ohos.permission.READ_IMAGEVIDEO'和'ohos.permission.WRITE_IMAGEVIDEO'。
下面以一张图片的URI的监听中某一个callback监听进行关闭,通过将这张图片设置为收藏实现关闭的callback监听不再触发监听回调为例
下面以取消对一张图片指定的监听为例,取消监听后,改变图片的收藏状态不再触发对应的监听回调
**开发步骤:**
1. [获取指定媒体资源](photoAccessHelper-resource-guidelines.md#获取指定媒体资源)
2. 关闭对指定媒体资源URI的监听。
2. 取消对指定媒体资源uri的监听。
3. 将指定媒体资源设置为收藏。
```ts
......
......@@ -20,9 +20,9 @@ PhotoAccessHelper提供相册管理模块相关能力,包括创建相册以及
- 收藏夹
- 视频相册
- 截屏和录屏相册
- [媒体资源变更通知相关](photoAccessHelper-notify-guidelines.md),包括:
- 打开对指定URI的监听
- 关闭指定URI的监听
- [媒体资源(图片、视频和相册)变更通知相关](photoAccessHelper-notify-guidelines.md),包括:
- 注册对指定URI的监听
- 取消指定URI的监听
> **说明:**
> 本开发指导基于API Version 10,仅适用于Stage模型。
......
......@@ -185,7 +185,7 @@ createAsset(displayName: string, callback: AsyncCallback&lt;PhotoAsset&gt;): voi
**错误码:**
接口抛出错误码的详细介绍请参见[通用错误码](../errorcodes/errorcode-universal.md)[通用错误码](../errorcodes/errorcode-universal.md)
接口抛出错误码的详细介绍请参见[文件管理错误码](../errorcodes/errorcode-filemanagement.md)[通用错误码](../errorcodes/errorcode-universal.md)
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
......@@ -236,7 +236,7 @@ createAsset(displayName: string): Promise&lt;PhotoAsset&gt;;
**错误码:**
接口抛出错误码的详细介绍请参见[通用错误码](../errorcodes/errorcode-universal.md)
接口抛出错误码的详细介绍请参见[文件管理错误码](../errorcodes/errorcode-filemanagement.md)[通用错误码](../errorcodes/errorcode-universal.md)
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
......@@ -337,7 +337,7 @@ createAsset(displayName: string, options: PhotoCreateOptions): Promise&lt;PhotoA
**错误码:**
接口抛出错误码的详细介绍请参见[通用错误码](../errorcodes/errorcode-universal.md)
接口抛出错误码的详细介绍请参见[文件管理错误码](../errorcodes/errorcode-filemanagement.md)[通用错误码](../errorcodes/errorcode-universal.md)
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
......@@ -1029,7 +1029,7 @@ async function example() {
registerChange(uri: string, forChildUris: boolean, callback: Callback&lt;ChangeData&gt;) : void
打开对指定uri的监听,使用callback方式返回异步结果。
注册对指定uri的监听,使用callback方式返回异步结果。
**需要权限**:ohos.permission.READ_IMAGEVIDEO
......@@ -1095,7 +1095,7 @@ async function example() {
unRegisterChange(uri: string, callback?: Callback&lt;ChangeData&gt;): void
关闭指定uri的监听,一个uri可以注册多个监听,存在多个callback监听时,可以取消指定注册的callback的监听;不指定callback时解除该uri的所有监听。
取消指定uri的监听,一个uri可以注册多个监听,存在多个callback监听时,可以取消指定注册的callback的监听;不指定callback时取消该uri的所有监听。
**需要权限**:ohos.permission.READ_IMAGEVIDEO
......@@ -1106,7 +1106,7 @@ unRegisterChange(uri: string, callback?: Callback&lt;ChangeData&gt;): void
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------------------------- | ---- | ------------------------------------------------------------ |
| uri | string | 是 | PhotoAsset的uri, Album的uri或[DefaultChangeUri](#defaultchangeuri)的值。 |
| callback | Callback&lt;[ChangeData](#changedata)&gt; | 否 | 解除[registerChange](#registerchange)注册时的callback的监听,不填时,解除该uri的所有监听。注:off指定注册的callback后不会进入此回调。 |
| callback | Callback&lt;[ChangeData](#changedata)&gt; | 否 | 取消[registerChange](#registerchange)注册时的callback的监听,不填时,取消该uri的所有监听。注:off指定注册的callback后不会进入此回调。 |
**错误码:**
......@@ -1376,7 +1376,7 @@ get(member: string): MemberType;
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ----- |
| member | string | 是 | 成员参数名称例如:PhotoKeys.URI。 |
| member | string | 是 | 成员参数名称,在get时,除了uri、photoType和displayName三个属性之外,其他的属性都需要在fetchColumns中填入需要get的[PhotoKeys](#photokeys),例如:get title属性fetchColumns: ['title']。 |
**返回值:**
......@@ -1428,8 +1428,8 @@ set(member: string, value: string): void;
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------- | ---- | ----- |
| member | string | 是 | 成员参数名称例如:PhotoKeys.URI。 |
| value | string | 是 | 设置成员参数名称,只能修改PhotoKeys.TITLE的值。 |
| member | string | 是 | 成员参数名称例如:[PhotoKeys](#photokeys).TITLE。 |
| value | string | 是 | 设置成员参数名称,只能修改[PhotoKeys](#photokeys).TITLE的值。 |
**错误码:**
......
......@@ -481,113 +481,6 @@ async function example() {
}
```
### getPhotoAlbums
getPhotoAlbums(options: AlbumFetchOptions, callback: AsyncCallback&lt;FetchResult&lt;Album&gt;&gt;): void;
获取相册,使用callback方式返回结果。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.READ_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| options | [AlbumFetchOptions](#albumfetchoptions) | 是 | 相册检索选项。 |
| callback | AsyncCallback&lt;[FetchResult](#fetchresult)&lt;[Album](#album)&gt;&gt; | 是 | callback返回相册检索结果。 |
**错误码:**
接口抛出错误码的详细介绍请参见[文件管理错误码](../errorcodes/errorcode-filemanagement.md)
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 13900020 | if type options is not AlbumFetchOptions. |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
console.info('getPhotoAlbumsDemo');
let predicates = new dataSharePredicates.DataSharePredicates();
let albumFetchOptions = {
predicates: predicates
};
mgr.getPhotoAlbums(albumFetchOptions, (err, fetchResult) => {
if (fetchResult != undefined) {
console.info('albums.count = ' + fetchResult.getCount());
fetchResult.getFirstObject((err, album) => {
if (album != undefined) {
console.info('first album.albumName = ' + album.albumName);
} else {
console.error('album is undefined, err = ', err);
}
});
} else {
console.error('getPhotoAlbums fail, message = ', err);
}
});
}
```
### getPhotoAlbums
getPhotoAlbums(options: AlbumFetchOptions): Promise&lt;FetchResult&lt;Album&gt;&gt;;
获取相册,使用Promise方式返回结果。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.READ_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| options | [AlbumFetchOptions](#albumfetchoptions) | 是 | 相册检索选项。 |
**返回值:**
| 类型 | 说明 |
| --------------------------- | -------------- |
| Promise&lt;[FetchResult](#fetchresult)&lt;[Album](#album)&gt;&gt; | Promise对象,返回相册检索结果。 |
**错误码:**
接口抛出错误码的详细介绍请参见[文件管理错误码](../errorcodes/errorcode-filemanagement.md)
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 13900020 | if type options is not AlbumFetchOptions. |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
console.info('getPhotoAlbumsDemo');
let predicates = new dataSharePredicates.DataSharePredicates();
let albumFetchOptions = {
predicates: predicates
};
try {
let fetchResult = await mgr.getPhotoAlbums(albumFetchOptions);
console.info('album.count = ' + fetchResult.getCount());
const album = await fetchResult.getFirstObject();
console.info('first album.albumName = ' + album.albumName);
} catch (err) {
console.error('getPhotoAlbums fail, message = ' + err);
}
}
```
### createAlbum<sup>10+</sup>
createAlbum(name: string, callback: AsyncCallback&lt;Album&gt;): void;
......@@ -935,12 +828,124 @@ async function example() {
}
```
### getPhotoAlbums
getPhotoAlbums(options: AlbumFetchOptions, callback: AsyncCallback&lt;FetchResult&lt;Album&gt;&gt;): void;
获取相册,使用callback方式返回结果。
此接口即将废弃,请使用[getAlbums<sup>10+</sup>](#getalbums10)的新接口。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.READ_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| options | [AlbumFetchOptions](#albumfetchoptions) | 是 | 相册检索选项。 |
| callback | AsyncCallback&lt;[FetchResult](#fetchresult)&lt;[Album](#album)&gt;&gt; | 是 | callback返回相册检索结果。 |
**错误码:**
接口抛出错误码的详细介绍请参见[文件管理错误码](../errorcodes/errorcode-filemanagement.md)
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 13900020 | if type options is not AlbumFetchOptions. |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
console.info('getPhotoAlbumsDemo');
let predicates = new dataSharePredicates.DataSharePredicates();
let albumFetchOptions = {
predicates: predicates
};
mgr.getPhotoAlbums(albumFetchOptions, (err, fetchResult) => {
if (fetchResult != undefined) {
console.info('albums.count = ' + fetchResult.getCount());
fetchResult.getFirstObject((err, album) => {
if (album != undefined) {
console.info('first album.albumName = ' + album.albumName);
} else {
console.error('album is undefined, err = ', err);
}
});
} else {
console.error('getPhotoAlbums fail, message = ', err);
}
});
}
```
### getPhotoAlbums
getPhotoAlbums(options: AlbumFetchOptions): Promise&lt;FetchResult&lt;Album&gt;&gt;;
获取相册,使用Promise方式返回结果。
此接口即将废弃,请使用[getAlbums<sup>10+</sup>](#getalbums10)的新接口。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.READ_IMAGEVIDEO
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------ | ---- | ------------------------- |
| options | [AlbumFetchOptions](#albumfetchoptions) | 是 | 相册检索选项。 |
**返回值:**
| 类型 | 说明 |
| --------------------------- | -------------- |
| Promise&lt;[FetchResult](#fetchresult)&lt;[Album](#album)&gt;&gt; | Promise对象,返回相册检索结果。 |
**错误码:**
接口抛出错误码的详细介绍请参见[文件管理错误码](../errorcodes/errorcode-filemanagement.md)
| 错误码ID | 错误信息 |
| -------- | ---------------------------------------- |
| 13900020 | if type options is not AlbumFetchOptions. |
**示例:**
```ts
import dataSharePredicates from '@ohos.data.dataSharePredicates';
async function example() {
console.info('getPhotoAlbumsDemo');
let predicates = new dataSharePredicates.DataSharePredicates();
let albumFetchOptions = {
predicates: predicates
};
try {
let fetchResult = await mgr.getPhotoAlbums(albumFetchOptions);
console.info('album.count = ' + fetchResult.getCount());
const album = await fetchResult.getFirstObject();
console.info('first album.albumName = ' + album.albumName);
} catch (err) {
console.error('getPhotoAlbums fail, message = ' + err);
}
}
```
### getPrivateAlbum
getPrivateAlbum(type: PrivateAlbumType, callback: AsyncCallback&lt;FetchResult&lt;PrivateAlbum&gt;&gt;): void;
获取系统相册,使用 callback 方式返回系统相册的数组。
此接口即将废弃,请使用[getAlbums<sup>10+</sup>](#getalbums10)的新接口。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.READ_IMAGEVIDEO
......@@ -982,6 +987,8 @@ getPrivateAlbum(type: PrivateAlbumType): Promise&lt;FetchResult&lt;PrivateAlbum&
获取系统相册,使用Promise方式返回结果。
此接口即将废弃,请使用[getAlbums<sup>10+</sup>](#getalbums10)的新接口。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**需要权限**:ohos.permission.READ_IMAGEVIDEO
......@@ -1252,102 +1259,6 @@ async function example() {
}
```
### on
on(type: ChangeEvent, callback: Callback&lt;void&gt;): void
打开文件管理库变更通知,使用callback方式返回异步结果。
此接口即将废弃,请使用[on<sup>10+</sup>](#on10)的新接口
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------------------- | ---- | ------------------------------------------------------------ |
| 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返回void |
**示例:**
```ts
async function example() {
console.info('onDemo');
let count = 0;
mgr.on('imageChange', () => {
count++;
// image file had changed, do something
});
try {
let testFileName = 'testFile' + Date.now() + '.jpg';
let fileAsset = await mgr.createPhotoAsset(testFileName);
console.info('createPhotoAsset file displayName' + fileAsset.displayName);
console.info('createPhotoAsset successfully');
} catch (err) {
console.error('createPhotoAsset failed, message = ' + err);
}
//sleep 1s
if (count > 0) {
console.info('onDemo success');
} else {
console.error('onDemo fail');
}
mgr.off('imageChange', () => {
// stop listening success
});
}
```
### off
off(type: ChangeEvent, callback?: Callback&lt;void&gt;): void
关闭文件管理库变更通知,使用callback方式返回异步结果。
此接口即将废弃,请使用[off<sup>10+</sup>](#off10)的新接口
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------------------- | ---- | ------------------------------------------------------------ |
| 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返回void。 |
**示例:**
```ts
async function example() {
console.info('offDemo');
let count = 0;
mgr.on('imageChange', () => {
count++;
// image file had changed, do something
});
mgr.off('imageChange', () => {
// stop listening success
});
try {
let testFileName = 'testFile' + Date.now() + '.jpg';
let fileAsset = await mgr.createPhotoAsset(testFileName);
console.info('createPhotoAsset file displayName' + fileAsset.displayName);
console.info('createPhotoAsset successfully');
} catch (err) {
console.error('createPhotoAsset failed, message = ' + err);
}
//sleep 1s
if (count == 0) {
console.info('offDemo success');
} else {
console.error('offDemo fail');
}
}
```
### getActivePeers
getActivePeers(callback: AsyncCallback&lt;Array&lt;PeerInfo&gt;&gt;): void;
......@@ -1545,7 +1456,7 @@ async function example() {
on(uri: string, forSubUri: boolean, callback: Callback&lt;ChangeData&gt;) : void
打开对指定uri的监听,使用callback方式返回异步结果。
对指定uri注册监听,使用callback方式返回异步结果。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
......@@ -1609,7 +1520,7 @@ async function example() {
off(uri: string, callback?: Callback&lt;ChangeData&gt;): void
关闭指定uri的监听,一个uri可以注册多个监听,存在多个callback监听时,可以取消指定注册的callback的监听;不指定callback时解除该uri的所有监听。
取消对指定uri的监听,一个uri可以注册多个监听,存在多个callback监听时,可以取消指定注册的callback的监听;不指定callback时解除该uri的所有监听。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
......@@ -1618,7 +1529,7 @@ async function example() {
| 参数名 | 类型 | 必填 | 说明 |
| -------- | ------------------------------------------- | ---- | ------------------------------------------------------------ |
| uri | string | 是 | FileAsset的uri, Album的uri或[DefaultChangeUri](#defaultchangeuri10)的值。 |
| callback | Callback&lt;[ChangeData](#changedata10)&gt; | 否 | 解除[on<sup>10+</sup>](#on10)注册时的callback的监听,不填时,解除该uri的所有监听。注:off指定注册的callback后不会进入此回调。 |
| callback | Callback&lt;[ChangeData](#changedata10)&gt; | 否 | 取消[on<sup>10+</sup>](#on10)注册时的callback的监听,不填时,取消该uri的所有监听。注:off指定注册的callback后不会进入此回调。 |
**错误码:**
......@@ -1667,6 +1578,102 @@ async function example() {
}
```
### on
on(type: ChangeEvent, callback: Callback&lt;void&gt;): void
打开文件管理库变更通知,使用callback方式返回异步结果。
此接口即将废弃,请使用[on<sup>10+</sup>](#on10)的新接口。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------------------- | ---- | ------------------------------------------------------------ |
| 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返回void |
**示例:**
```ts
async function example() {
console.info('onDemo');
let count = 0;
mgr.on('imageChange', () => {
count++;
// image file had changed, do something
});
try {
let testFileName = 'testFile' + Date.now() + '.jpg';
let fileAsset = await mgr.createPhotoAsset(testFileName);
console.info('createPhotoAsset file displayName' + fileAsset.displayName);
console.info('createPhotoAsset successfully');
} catch (err) {
console.error('createPhotoAsset failed, message = ' + err);
}
//sleep 1s
if (count > 0) {
console.info('onDemo success');
} else {
console.error('onDemo fail');
}
mgr.off('imageChange', () => {
// stop listening success
});
}
```
### off
off(type: ChangeEvent, callback?: Callback&lt;void&gt;): void
关闭文件管理库变更通知,使用callback方式返回异步结果。
此接口即将废弃,请使用[off<sup>10+</sup>](#off10)的新接口。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
**参数:**
| 参数名 | 类型 | 必填 | 说明 |
| -------- | -------------------- | ---- | ------------------------------------------------------------ |
| 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返回void。 |
**示例:**
```ts
async function example() {
console.info('offDemo');
let count = 0;
mgr.on('imageChange', () => {
count++;
// image file had changed, do something
});
mgr.off('imageChange', () => {
// stop listening success
});
try {
let testFileName = 'testFile' + Date.now() + '.jpg';
let fileAsset = await mgr.createPhotoAsset(testFileName);
console.info('createPhotoAsset file displayName' + fileAsset.displayName);
console.info('createPhotoAsset successfully');
} catch (err) {
console.error('createPhotoAsset failed, message = ' + err);
}
//sleep 1s
if (count == 0) {
console.info('offDemo success');
} else {
console.error('offDemo fail');
}
}
```
## FileAsset
提供封装文件属性的方法。
......@@ -3488,6 +3495,8 @@ async function example() {
系统相册。
此接口即将废弃,请使用[Album](#album)接口替代。
### 属性
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
......@@ -3506,6 +3515,8 @@ getPhotoAssets(options: FetchOptions, callback: AsyncCallback&lt;FetchResult&lt;
获取系统相册中的文件。该方法使用callback形式来返回文件。
此接口即将废弃,请使用[Album.getPhotoAssets](#getphotoassets-2)接口替代。
**需要权限**:ohos.permission.READ_IMAGEVIDEO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
......@@ -3557,6 +3568,8 @@ getPhotoAssets(options: FetchOptions): Promise&lt;FetchResult&lt;FileAsset&gt;&g
获取系统相册中的文件。该方法使用Promise来返回文件。
此接口即将废弃,请使用[Album.getPhotoAssets](#getphotoassets-3)接口替代。
**需要权限**:ohos.permission.READ_IMAGEVIDEO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
......@@ -3607,6 +3620,8 @@ delete(uri: string, callback: AsyncCallback&lt;void&gt;): void;
删除系统相册中的文件。
此接口即将废弃,请使用[Album.deletePhotoAssets](#deletephotoassets10)接口替代。
**需要权限**:ohos.permission.READ_IMAGEVIDEO 和 ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.READ_AUDIO 和 ohos.permission.WRITE_AUDIO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
......@@ -3651,6 +3666,8 @@ delete(uri: string): Promise&lt;void&gt;;
删除系统相册中的文件。
此接口即将废弃,请使用[Album.deletePhotoAssets](#deletephotoassets10)接口替代。
**需要权限**:ohos.permission.READ_IMAGEVIDEO 和 ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.READ_AUDIO 和 ohos.permission.WRITE_AUDIO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
......@@ -3698,6 +3715,8 @@ recover(uri: string, callback: AsyncCallback&lt;void&gt;): void;
恢复系统相册中的文件。
此接口即将废弃,请使用[Album.recoverPhotoAssets](#recoverphotoassets10)接口替代。
**需要权限**:ohos.permission.READ_IMAGEVIDEO 和 ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.READ_AUDIO 和 ohos.permission.WRITE_AUDIO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
......@@ -3742,6 +3761,8 @@ recover(uri: string): Promise&lt;void&gt;;
恢复系统相册中的文件。
此接口即将废弃,请使用[Album.recoverPhotoAssets](#recoverphotoassets10)接口替代。
**需要权限**:ohos.permission.READ_IMAGEVIDEO 和 ohos.permission.WRITE_IMAGEVIDEO 或 ohos.permission.READ_AUDIO 和 ohos.permission.WRITE_AUDIO
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
......@@ -3890,6 +3911,8 @@ async function example() {
枚举,系统相册类型。
此接口即将废弃,请使用[AlbumType](#albumtype10)[AlbumSubType](#albumsubtype10)和接口替代。
**系统能力**:SystemCapability.FileManagement.UserFileManager.Core
| 名称 | 值 | 说明 |
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册