提交 92d95203 编写于 作者: G Gloria

Update docs against 14854+15143+14996

Signed-off-by: wusongqing<wusongqing@huawei.com>
上级 2db0ad1e
...@@ -47,21 +47,27 @@ For details about the error codes, see [Utils Error Codes](../errorcodes/errorco ...@@ -47,21 +47,27 @@ For details about the error codes, see [Utils Error Codes](../errorcodes/errorco
**Example** **Example**
```js ```js
let xml = try {
let xml =
'<?xml version="1.0" encoding="utf-8"?>' + '<?xml version="1.0" encoding="utf-8"?>' +
'<note importance="high" logged="true">' + '<note importance="high" logged="true">' +
' <title>Happy</title>' + ' <title>Happy</title>' +
' <todo>Work</todo>' + ' <todo>Work</todo>' +
' <todo>Play</todo>' + ' <todo>Play</todo>' +
'</note>'; '</note>';
let conv = new convertxml.ConvertXML() let conv = new convertxml.ConvertXML()
let options = {trim : false, declarationKey:"_declaration", let options = {
instructionKey : "_instruction", attributesKey : "_attributes", trim: false, declarationKey: "_declaration",
textKey : "_text", cdataKey:"_cdata", doctypeKey : "_doctype", instructionKey: "_instruction", attributesKey: "_attributes",
commentKey : "_comment", parentKey : "_parent", typeKey : "_type", textKey: "_text", cdataKey: "_cdata", doctypeKey: "_doctype",
nameKey : "_name", elementsKey : "_elements"} commentKey: "_comment", parentKey: "_parent", typeKey: "_type",
let result = JSON.stringify(conv.convertToJSObject(xml, options)); nameKey: "_name", elementsKey: "_elements"
console.log(result); }
let result = JSON.stringify(conv.convertToJSObject(xml, options));
console.log(result);
} catch (e) {
console.log(e.toString());
}
// Output (non-compact) // Output (non-compact)
// {"_declaration":{"_attributes":{"version":"1.0","encoding":"utf-8"}},"_elements":[{"_type":"element","_name":"note","_attributes":{"importance":"high","logged":"true"},"_elements":[{"_type":"element","_name":"title","_elements":[{"_type":"text","_text":"Happy"}]},{"_type":"element","_name":"todo","_elements":[{"_type":"text","_text":"Work"}]},{"_type":"element","_name":"todo","_elements":[{"_type":"text","_text":"Play"}]}]}]} // {"_declaration":{"_attributes":{"version":"1.0","encoding":"utf-8"}},"_elements":[{"_type":"element","_name":"note","_attributes":{"importance":"high","logged":"true"},"_elements":[{"_type":"element","_name":"title","_elements":[{"_type":"text","_text":"Happy"}]},{"_type":"element","_name":"todo","_elements":[{"_type":"text","_text":"Work"}]},{"_type":"element","_name":"todo","_elements":[{"_type":"text","_text":"Play"}]}]}]}
``` ```
......
...@@ -34,6 +34,7 @@ This API can be used only in the stage model. ...@@ -34,6 +34,7 @@ This API can be used only in the stage model.
**Example (from API version 9)** **Example (from API version 9)**
```ts ```ts
// Obtain a MediaLibrary instance. The instance obtained here is used in later.
const context = getContext(this); const context = getContext(this);
let media = mediaLibrary.getMediaLibrary(context); let media = mediaLibrary.getMediaLibrary(context);
``` ```
...@@ -92,46 +93,59 @@ Obtains file assets (also called files). This API uses an asynchronous callback ...@@ -92,46 +93,59 @@ Obtains file assets (also called files). This API uses an asynchronous callback
**Example** **Example**
```js ```js
let fileKeyObj = mediaLibrary.FileKey; async function example() {
let imageType = mediaLibrary.MediaType.IMAGE; let fileKeyObj = mediaLibrary.FileKey;
let imagesFetchOp = { let imageType = mediaLibrary.MediaType.IMAGE;
// Create options for fetching the files. The options are used to obtain files of the image type.
let imagesFetchOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
}; };
media.getFileAssets(imagesFetchOp, (error, fetchFileResult) => { // Obtain the files in asynchronous callback mode.
media.getFileAssets(imagesFetchOp, (error, fetchFileResult) => {
// Check whether the result set of the obtained files is undefined. If yes, the API call fails.
if (fetchFileResult == undefined) { if (fetchFileResult == undefined) {
console.error('Failed to get fetchFileResult: ' + error); console.error('get fetchFileResult failed with error: ' + error);
return; return;
} }
// Obtain the total number of files in the result set.
const count = fetchFileResult.getCount(); const count = fetchFileResult.getCount();
// Check whether the number is less than 0. If yes, the API call fails.
if (count < 0) { if (count < 0) {
console.error('Failed to get count from fetchFileResult: count: ' + count); console.error('get count from fetchFileResult failed, count: ' + count);
return; return;
} }
// Check whether the number is 0. If yes, the API call is successful, but the result set is empty. Check whether the options for fetching the files are correctly set and whether the corresponding files exist on the device.
if (count == 0) { if (count == 0) {
console.info('The count of fetchFileResult is zero'); console.info('The count of fetchFileResult is zero');
return; return;
} }
console.info('Get fetchFileResult successfully, count: ' + count);
console.info('Get fetchFileResult success, count: ' + count); // Obtain the first file in the result set in asynchronous callback mode.
fetchFileResult.getFirstObject((err, fileAsset) => { fetchFileResult.getFirstObject((error, fileAsset) => {
// Check whether the first file is undefined. If yes, the API call fails.
if (fileAsset == undefined) { if (fileAsset == undefined) {
console.error('Failed to get first object: ' + err); console.error('get first object failed with error: ' + error);
return; return;
} }
console.info('fileAsset.displayName ' + ': ' + fileAsset.displayName); console.info('fileAsset.displayName ' + '0 : ' + fileAsset.displayName);
// Call getNextObject to obtain the next file until the last one.
for (let i = 1; i < count; i++) { for (let i = 1; i < count; i++) {
fetchFileResult.getNextObject((err, fileAsset) => { fetchFileResult.getNextObject((error, fileAsset) => {
if (fileAsset == undefined) { if (fileAsset == undefined) {
console.error('Failed to get next object: ' + err); console.error('get next object failed with error: ' + error);
return; return;
} }
console.info('fileAsset.displayName ' + i + ': ' + fileAsset.displayName); console.info('fileAsset.displayName ' + i + ': ' + fileAsset.displayName);
}) })
} }
}); });
}); // Release the FetchFileResult instance and invalidate it. Other APIs can no longer be called.
fetchFileResult.close();
});
}
``` ```
### getFileAssets<sup>7+</sup> ### getFileAssets<sup>7+</sup>
getFileAssets(options: MediaFetchOptions): Promise&lt;FetchFileResult&gt; getFileAssets(options: MediaFetchOptions): Promise&lt;FetchFileResult&gt;
...@@ -157,38 +171,51 @@ Obtains file assets. This API uses a promise to return the result. ...@@ -157,38 +171,51 @@ Obtains file assets. This API uses a promise to return the result.
**Example** **Example**
```js ```js
let fileKeyObj = mediaLibrary.FileKey; async function example() {
let imageType = mediaLibrary.MediaType.IMAGE; let fileKeyObj = mediaLibrary.FileKey;
let imagesFetchOp = { let imageType = mediaLibrary.MediaType.IMAGE;
// Create options for fetching the files. The options are used to obtain files of the image type.
let imagesFetchOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
}; };
media.getFileAssets(imagesFetchOp).then(function(fetchFileResult) { // Obtain the files in promise mode.
media.getFileAssets(imagesFetchOp).then((fetchFileResult) => {
// Obtain the total number of files in the result set.
const count = fetchFileResult.getCount(); const count = fetchFileResult.getCount();
// Check whether the number is less than 0. If yes, the API call fails.
if (count < 0) { if (count < 0) {
console.error('Failed to get count from fetchFileResult: count: ' + count); console.error('get count from fetchFileResult failed, count: ' + count);
return; return;
} }
// Check whether the number is 0. If yes, the API call is successful, but the result set is empty. Check whether the options for fetching the files are correctly set and whether the corresponding files exist on the device.
if (count == 0) { if (count == 0) {
console.info('The count of fetchFileResult is zero'); console.info('The count of fetchFileResult is zero');
return; return;
} }
console.info('Get fetchFileResult success, count: ' + count); console.info('Get fetchFileResult successfully, count: ' + count);
fetchFileResult.getFirstObject().then(function(fileAsset) { // Obtain the first file in the result set in promise mode.
console.info('fileAsset.displayName ' + ': ' + fileAsset.displayName); fetchFileResult.getFirstObject().then((fileAsset) => {
console.info('fileAsset.displayName ' + '0 : ' + fileAsset.displayName);
// Call getNextObject to obtain the next file until the last one.
for (let i = 1; i < count; i++) { for (let i = 1; i < count; i++) {
fetchFileResult.getNextObject().then(function(fileAsset) { fetchFileResult.getNextObject().then((fileAsset) => {
console.info('fileAsset.displayName ' + ': ' + fileAsset.displayName); console.info('fileAsset.displayName ' + i + ': ' + fileAsset.displayName);
}).catch(function(err) { }).catch((error) => {
console.error('Failed to get next object: ' + err); console.error('get next object failed with error: ' + error);
}) })
} }
}).catch(function(err) { }).catch((error) => {
console.error('Failed to get first object: ' + err); // Calling getFirstObject fails.
console.error('get first object failed with error: ' + error);
}); });
}).catch(function(err){ // Release the FetchFileResult instance and invalidate it. Other APIs can no longer be called.
console.error("Failed to get file assets: " + err); fetchFileResult.close();
}); }).catch((error) => {
// Calling getFileAssets fails.
console.error('get file assets failed with error: ' + error);
});
}
``` ```
### on<sup>8+</sup> ### on<sup>8+</sup>
...@@ -232,7 +259,7 @@ Unsubscribes from the media library changes. This API uses an asynchronous callb ...@@ -232,7 +259,7 @@ Unsubscribes from the media library changes. This API uses an asynchronous callb
```js ```js
media.off('imageChange', () => { media.off('imageChange', () => {
// stop listening success // Stop listening successfully.
}) })
``` ```
...@@ -263,11 +290,11 @@ async function example() { ...@@ -263,11 +290,11 @@ async function example() {
let mediaType = mediaLibrary.MediaType.IMAGE; let mediaType = mediaLibrary.MediaType.IMAGE;
let DIR_IMAGE = mediaLibrary.DirectoryType.DIR_IMAGE; let DIR_IMAGE = mediaLibrary.DirectoryType.DIR_IMAGE;
const path = await media.getPublicDirectory(DIR_IMAGE); const path = await media.getPublicDirectory(DIR_IMAGE);
media.createAsset(mediaType, 'imageCallBack.jpg', path + 'myPicture/', (err, fileAsset) => { media.createAsset(mediaType, 'imageCallBack.jpg', path + 'myPicture/', (error, fileAsset) => {
if (fileAsset != undefined) { if (fileAsset != undefined) {
console.info('createAsset successfully, message'); console.info('createAsset successfully, message');
} else { } else {
console.error('createAsset failed, message = ' + err); console.error('createAsset failed with error: ' + error);
} }
}); });
} }
...@@ -307,8 +334,8 @@ async function example() { ...@@ -307,8 +334,8 @@ async function example() {
const path = await media.getPublicDirectory(DIR_IMAGE); const path = await media.getPublicDirectory(DIR_IMAGE);
media.createAsset(mediaType, 'imagePromise.jpg', path + 'myPicture/').then((fileAsset) => { media.createAsset(mediaType, 'imagePromise.jpg', path + 'myPicture/').then((fileAsset) => {
console.info('createAsset successfully, message = ' + JSON.stringify(fileAsset)); console.info('createAsset successfully, message = ' + JSON.stringify(fileAsset));
}).catch((err) => { }).catch((error) => {
console.error('createAsset failed, message = ' + err); console.error('createAsset failed with error: ' + error);
}); });
} }
``` ```
...@@ -349,14 +376,15 @@ async function example() { ...@@ -349,14 +376,15 @@ async function example() {
const fetchFileResult = await media.getFileAssets(option); const fetchFileResult = await media.getFileAssets(option);
let asset = await fetchFileResult.getFirstObject(); let asset = await fetchFileResult.getFirstObject();
if (asset == undefined) { if (asset == undefined) {
console.error('asset not exist') console.error('asset not exist');
return return;
} }
media.deleteAsset(asset.uri).then(() => { media.deleteAsset(asset.uri).then(() => {
console.info("deleteAsset successfully"); console.info('deleteAsset successfully');
}).catch((err) => { }).catch((error) => {
console.error("deleteAsset failed with error:"+ err); console.error('deleteAsset failed with error: ' + error);
}); });
fetchFileResult.close();
} }
``` ```
...@@ -391,16 +419,17 @@ async function example() { ...@@ -391,16 +419,17 @@ async function example() {
const fetchFileResult = await media.getFileAssets(option); const fetchFileResult = await media.getFileAssets(option);
let asset = await fetchFileResult.getFirstObject(); let asset = await fetchFileResult.getFirstObject();
if (asset == undefined) { if (asset == undefined) {
console.error('asset not exist') console.error('asset not exist');
return return;
} }
media.deleteAsset(asset.uri, (err) => { media.deleteAsset(asset.uri, (error) => {
if (err != undefined) { if (error != undefined) {
console.info("deleteAsset successfully"); console.error('deleteAsset failed with error: ' + error);
} else { } else {
console.error("deleteAsset failed with error:"+ err); console.info('deleteAsset successfully');
} }
}); });
fetchFileResult.close();
} }
``` ```
...@@ -423,11 +452,11 @@ Obtains a public directory. This API uses an asynchronous callback to return the ...@@ -423,11 +452,11 @@ Obtains a public directory. This API uses an asynchronous callback to return the
```js ```js
let DIR_CAMERA = mediaLibrary.DirectoryType.DIR_CAMERA; let DIR_CAMERA = mediaLibrary.DirectoryType.DIR_CAMERA;
media.getPublicDirectory(DIR_CAMERA, (err, dicResult) => { media.getPublicDirectory(DIR_CAMERA, (error, dicResult) => {
if (dicResult == 'Camera/') { if (dicResult == 'Camera/') {
console.info('mediaLibraryTest : getPublicDirectory passed'); console.info('getPublicDirectory DIR_CAMERA successfully');
} else { } else {
console.error('mediaLibraryTest : getPublicDirectory failed'); console.error('getPublicDirectory DIR_CAMERA failed with error: ' + error);
} }
}); });
``` ```
...@@ -457,12 +486,15 @@ Obtains a public directory. This API uses a promise to return the result. ...@@ -457,12 +486,15 @@ Obtains a public directory. This API uses a promise to return the result.
```js ```js
async function example() { async function example() {
let DIR_CAMERA = mediaLibrary.DirectoryType.DIR_CAMERA; let DIR_CAMERA = mediaLibrary.DirectoryType.DIR_CAMERA;
const dicResult = await media.getPublicDirectory(DIR_CAMERA); media.getPublicDirectory(DIR_CAMERA).then((dicResult) => {
if (dicResult == 'Camera/') { if (dicResult == 'Camera/') {
console.info('MediaLibraryTest : getPublicDirectory'); console.info('getPublicDirectory DIR_CAMERA successfully');
} else { } else {
console.error('MediaLibraryTest : getPublicDirectory failed'); console.error('getPublicDirectory DIR_CAMERA failed');
} }
}).catch((error) => {
console.error('getPublicDirectory failed with error: ' + error);
});
} }
``` ```
...@@ -486,19 +518,19 @@ Obtains the albums. This API uses an asynchronous callback to return the result. ...@@ -486,19 +518,19 @@ Obtains the albums. This API uses an asynchronous callback to return the result.
**Example** **Example**
```js ```js
let AlbumNoArgsfetchOp = { async function example() {
let AlbumNoArgsfetchOp = {
selections: '', selections: '',
selectionArgs: [], selectionArgs: [],
}; };
media.getAlbums(AlbumNoArgsfetchOp, (err, albumList) => { media.getAlbums(AlbumNoArgsfetchOp, (error, albumList) => {
if (albumList != undefined) { if (albumList != undefined) {
const album = albumList[0]; console.info('getAlbums successfully: ' + JSON.stringify(albumList));
console.info('album.albumName = ' + album.albumName);
console.info('album.count = ' + album.count);
} else { } else {
console.error('getAlbum fail, message = ' + err); console.error('getAlbums failed with error: ' + error);
} }
}) })
}
``` ```
### getAlbums<sup>7+</sup> ### getAlbums<sup>7+</sup>
...@@ -526,15 +558,17 @@ Obtains the albums. This API uses a promise to return the result. ...@@ -526,15 +558,17 @@ Obtains the albums. This API uses a promise to return the result.
**Example** **Example**
```js ```js
let AlbumNoArgsfetchOp = { async function example() {
let AlbumNoArgsfetchOp = {
selections: '', selections: '',
selectionArgs: [], selectionArgs: [],
}; };
media.getAlbums(AlbumNoArgsfetchOp).then(function(albumList){ media.getAlbums(AlbumNoArgsfetchOp).then((albumList) => {
console.info("getAlbums successfully:"+ JSON.stringify(albumList)); console.info('getAlbums successfully: ' + JSON.stringify(albumList));
}).catch(function(err){ }).catch((error) => {
console.error("getAlbums failed with error: " + err); console.error('getAlbums failed with error: ' + error);
}); });
}
``` ```
### release<sup>8+</sup> ### release<sup>8+</sup>
...@@ -550,12 +584,12 @@ Call this API when you no longer need to use the APIs in the **MediaLibrary** in ...@@ -550,12 +584,12 @@ Call this API when you no longer need to use the APIs in the **MediaLibrary** in
| Name | Type | Mandatory | Description | | Name | Type | Mandatory | Description |
| -------- | ------------------------- | ---- | ---------- | | -------- | ------------------------- | ---- | ---------- |
| callback | AsyncCallback&lt;void&gt; | Yes | Callback used to return the execution result.| | callback | AsyncCallback&lt;void&gt; | Yes | Callback that returns no value.|
**Example** **Example**
```js ```js
media.release((err) => { media.release(() => {
// do something // do something
}); });
``` ```
...@@ -604,16 +638,16 @@ Stores a media asset. This API uses an asynchronous callback to return the URI t ...@@ -604,16 +638,16 @@ Stores a media asset. This API uses an asynchronous callback to return the URI t
```js ```js
let option = { let option = {
src : "/data/storage/el2/base/haps/entry/image.png", src : '/data/storage/el2/base/haps/entry/image.png',
mimeType : "image/*", mimeType : 'image/*',
relativePath : "Pictures/" relativePath : 'Pictures/'
}; };
mediaLibrary.getMediaLibrary().storeMediaAsset(option, (err, value) => { mediaLibrary.getMediaLibrary().storeMediaAsset(option, (error, value) => {
if (err) { if (error) {
console.error("An error occurred when storing media resources."); console.error('storeMediaAsset failed with error: ' + error);
return; return;
} }
console.info("Media resources stored. "); console.info('Media resources stored. ');
// Obtain the URI that stores the media asset. // Obtain the URI that stores the media asset.
}); });
``` ```
...@@ -647,15 +681,15 @@ Stores a media asset. This API uses a promise to return the URI that stores the ...@@ -647,15 +681,15 @@ Stores a media asset. This API uses a promise to return the URI that stores the
```js ```js
let option = { let option = {
src : "/data/storage/el2/base/haps/entry/image.png", src : '/data/storage/el2/base/haps/entry/image.png',
mimeType : "image/*", mimeType : 'image/*',
relativePath : "Pictures/" relativePath : 'Pictures/'
}; };
mediaLibrary.getMediaLibrary().storeMediaAsset(option).then((value) => { mediaLibrary.getMediaLibrary().storeMediaAsset(option).then((value) => {
console.info("Media resources stored."); console.info('Media resources stored.');
// Obtain the URI that stores the media asset. // Obtain the URI that stores the media asset.
}).catch((err) => { }).catch((error) => {
console.error("An error occurred when storing media resources."); console.error('storeMediaAsset failed with error: ' + error);
}); });
``` ```
...@@ -676,7 +710,7 @@ Starts image preview, with the first image to preview specified. This API can be ...@@ -676,7 +710,7 @@ Starts image preview, with the first image to preview specified. This API can be
| Name | Type | Mandatory | Description | | Name | Type | Mandatory | Description |
| -------- | ------------------------- | ---- | ---------------------------------------- | | -------- | ------------------------- | ---- | ---------------------------------------- |
| images | Array&lt;string&gt; | Yes | URIs of the images to preview. The value can start with either **https://** or **datashare://**.| | images | Array&lt;string&gt; | Yes | URIs of the images to preview. The value can start with either **'https://'** or **'datashare://'**.|
| index | number | Yes | Index of the first image to preview. | | index | number | Yes | Index of the first image to preview. |
| callback | AsyncCallback&lt;void&gt; | Yes | Callback used to return the image preview result. If the preview fails, an error message is returned. | | callback | AsyncCallback&lt;void&gt; | Yes | Callback used to return the image preview result. If the preview fails, an error message is returned. |
...@@ -684,22 +718,22 @@ Starts image preview, with the first image to preview specified. This API can be ...@@ -684,22 +718,22 @@ Starts image preview, with the first image to preview specified. This API can be
```js ```js
let images = [ let images = [
"datashare:///media/xxxx/2", 'datashare:///media/xxxx/2',
"datashare:///media/xxxx/3" 'datashare:///media/xxxx/3'
]; ];
/* Preview online images. /* Preview online images.
let images = [ let images = [
"https://media.xxxx.com/image1.jpg", 'https://media.xxxx.com/image1.jpg',
"https://media.xxxx.com/image2.jpg" 'https://media.xxxx.com/image2.jpg'
]; ];
*/ */
let index = 1; let index = 1;
mediaLibrary.getMediaLibrary().startImagePreview(images, index, (err) => { mediaLibrary.getMediaLibrary().startImagePreview(images, index, (error) => {
if (err) { if (error) {
console.error("An error occurred when previewing the images."); console.error('startImagePreview failed with error: ' + error);
return; return;
} }
console.info("Succeeded in previewing the images."); console.info('Succeeded in previewing the images.');
}); });
``` ```
...@@ -720,28 +754,28 @@ Starts image preview. This API can be used to preview local images whose URIs st ...@@ -720,28 +754,28 @@ Starts image preview. This API can be used to preview local images whose URIs st
| Name | Type | Mandatory | Description | | Name | Type | Mandatory | Description |
| -------- | ------------------------- | ---- | ---------------------------------------- | | -------- | ------------------------- | ---- | ---------------------------------------- |
| images | Array&lt;string&gt; | Yes | URIs of the images to preview. The value can start with either **https://** or **datashare://**.| | images | Array&lt;string&gt; | Yes | URIs of the images to preview. The value can start with either **'https://'** or **'datashare://'**.|
| callback | AsyncCallback&lt;void&gt; | Yes | Callback used to return the image preview result. If the preview fails, an error message is returned. | | callback | AsyncCallback&lt;void&gt; | Yes | Callback used to return the image preview result. If the preview fails, an error message is returned. |
**Example** **Example**
```js ```js
let images = [ let images = [
"datashare:///media/xxxx/2", 'datashare:///media/xxxx/2',
"datashare:///media/xxxx/3" 'datashare:///media/xxxx/3'
]; ];
/* Preview online images. /* Preview online images.
let images = [ let images = [
"https://media.xxxx.com/image1.jpg", 'https://media.xxxx.com/image1.jpg',
"https://media.xxxx.com/image2.jpg" 'https://media.xxxx.com/image2.jpg'
]; ];
*/ */
mediaLibrary.getMediaLibrary().startImagePreview(images, (err) => { mediaLibrary.getMediaLibrary().startImagePreview(images, (error) => {
if (err) { if (error) {
console.error("An error occurred when previewing the images."); console.error('startImagePreview failed with error: ' + error);
return; return;
} }
console.info("Succeeded in previewing the images."); console.info('Succeeded in previewing the images.');
}); });
``` ```
...@@ -762,7 +796,7 @@ Starts image preview, with the first image to preview specified. This API can be ...@@ -762,7 +796,7 @@ Starts image preview, with the first image to preview specified. This API can be
| Name | Type | Mandatory | Description | | Name | Type | Mandatory | Description |
| ------ | ------------------- | ---- | ---------------------------------------- | | ------ | ------------------- | ---- | ---------------------------------------- |
| images | Array&lt;string&gt; | Yes | URIs of the images to preview. The value can start with either **https://** or **datashare://**.| | images | Array&lt;string&gt; | Yes | URIs of the images to preview. The value can start with either **'https://'** or **'datashare://'**.|
| index | number | No | Index of the first image to preview. If this parameter is not specified, the default value **0** is used. | | index | number | No | Index of the first image to preview. If this parameter is not specified, the default value **0** is used. |
**Return value** **Return value**
...@@ -775,20 +809,20 @@ Starts image preview, with the first image to preview specified. This API can be ...@@ -775,20 +809,20 @@ Starts image preview, with the first image to preview specified. This API can be
```js ```js
let images = [ let images = [
"datashare:///media/xxxx/2", 'datashare:///media/xxxx/2',
"datashare:///media/xxxx/3" 'datashare:///media/xxxx/3'
]; ];
/* Preview online images. /* Preview online images.
let images = [ let images = [
"https://media.xxxx.com/image1.jpg", 'https://media.xxxx.com/image1.jpg',
"https://media.xxxx.com/image2.jpg" 'https://media.xxxx.com/image2.jpg'
]; ];
*/ */
let index = 1; let index = 1;
mediaLibrary.getMediaLibrary().startImagePreview(images, index).then(() => { mediaLibrary.getMediaLibrary().startImagePreview(images, index).then(() => {
console.info("Succeeded in previewing the images."); console.info('Succeeded in previewing the images.');
}).catch((err) => { }).catch((error) => {
console.error("An error occurred when previewing the images."); console.error('startImagePreview failed with error: ' + error);
}); });
``` ```
...@@ -816,15 +850,15 @@ Starts media selection. This API uses an asynchronous callback to return the lis ...@@ -816,15 +850,15 @@ Starts media selection. This API uses an asynchronous callback to return the lis
```js ```js
let option : mediaLibrary.MediaSelectOption = { let option : mediaLibrary.MediaSelectOption = {
type : "media", type : 'media',
count : 2 count : 2
}; };
mediaLibrary.getMediaLibrary().startMediaSelect(option, (err, value) => { mediaLibrary.getMediaLibrary().startMediaSelect(option, (error, value) => {
if (err) { if (error) {
console.error("An error occurred when selecting media resources."); console.error('startMediaSelect failed with error: ' + error);
return; return;
} }
console.info("Media resources selected."); console.info('Media resources selected.');
// Obtain the media selection value. // Obtain the media selection value.
}); });
``` ```
...@@ -858,14 +892,14 @@ Starts media selection. This API uses a promise to return the list of URIs that ...@@ -858,14 +892,14 @@ Starts media selection. This API uses a promise to return the list of URIs that
```js ```js
let option : mediaLibrary.MediaSelectOption = { let option : mediaLibrary.MediaSelectOption = {
type : "media", type : 'media',
count : 2 count : 2
}; };
mediaLibrary.getMediaLibrary().startMediaSelect(option).then((value) => { mediaLibrary.getMediaLibrary().startMediaSelect(option).then((value) => {
console.info("Media resources selected."); console.info('Media resources selected.');
// Obtain the media selection value. // Obtain the media selection value.
}).catch((err) => { }).catch((error) => {
console.error("An error occurred when selecting media resources."); console.error('startMediaSelect failed with error: ' + error);
}); });
``` ```
...@@ -893,14 +927,12 @@ Obtains information about online peer devices. This API uses a promise to return ...@@ -893,14 +927,12 @@ Obtains information about online peer devices. This API uses a promise to return
async function example() { async function example() {
media.getActivePeers().then((devicesInfo) => { media.getActivePeers().then((devicesInfo) => {
if (devicesInfo != undefined) { if (devicesInfo != undefined) {
for (let i = 0; i < devicesInfo.length; i++) { console.info('get distributed info ' + JSON.stringify(devicesInfo));
console.info('get distributed info ' + devicesInfo[i].deviceName + devicesInfo[i].networkId);
}
} else { } else {
console.info('get distributed info is undefined!') console.info('get distributed info is undefined!');
} }
}).catch((err) => { }).catch((error) => {
console.error("get distributed info failed with error:" + err); console.error('get distributed info failed with error: ' + error);
}); });
} }
``` ```
...@@ -927,15 +959,13 @@ Obtains information about online peer devices. This API uses an asynchronous cal ...@@ -927,15 +959,13 @@ Obtains information about online peer devices. This API uses an asynchronous cal
```js ```js
async function example() { async function example() {
media.getActivePeers((err, devicesInfo) => { media.getActivePeers((error, devicesInfo) => {
if (devicesInfo != undefined) { if (devicesInfo != undefined) {
for (let i = 0; i < devicesInfo.length; i++) { console.info('get distributed info ' + JSON.stringify(devicesInfo));
console.info('get distributed info ' + devicesInfo[i].deviceName + devicesInfo[i].networkId);
}
} else { } else {
console.error('get distributed fail, message = ' + err) console.error('get distributed failed with error: ' + error);
} }
}) });
} }
``` ```
...@@ -964,14 +994,12 @@ Obtains information about all peer devices. This API uses a promise to return th ...@@ -964,14 +994,12 @@ Obtains information about all peer devices. This API uses a promise to return th
async function example() { async function example() {
media.getAllPeers().then((devicesInfo) => { media.getAllPeers().then((devicesInfo) => {
if (devicesInfo != undefined) { if (devicesInfo != undefined) {
for (let i = 0; i < devicesInfo.length; i++) { console.info('get distributed info ' + JSON.stringify(devicesInfo));
console.info('get distributed info ' + devicesInfo[i].deviceName + devicesInfo[i].networkId);
}
} else { } else {
console.info('get distributed info is undefined!') console.info('get distributed info is undefined!');
} }
}).catch((err) => { }).catch((error) => {
console.error("get distributed info failed with error: " + err); console.error('get distributed info failed with error: ' + error);
}); });
} }
``` ```
...@@ -998,15 +1026,13 @@ Obtains information about online peer devices. This API uses an asynchronous cal ...@@ -998,15 +1026,13 @@ Obtains information about online peer devices. This API uses an asynchronous cal
```js ```js
async function example() { async function example() {
media.getAllPeers((err, devicesInfo) => { media.getAllPeers((error, devicesInfo) => {
if (devicesInfo != undefined) { if (devicesInfo != undefined) {
for (let i = 0; i < devicesInfo.length; i++) { console.info('get distributed info ' + JSON.stringify(devicesInfo));
console.info('get distributed info ' + devicesInfo[i].deviceName + devicesInfo[i].networkId);
}
} else { } else {
console.error('get distributed fail, message = ' + err) console.error('get distributed failed with error: ' + error);
} }
}) });
} }
``` ```
...@@ -1068,19 +1094,23 @@ Checks whether this file asset is a directory. This API uses an asynchronous cal ...@@ -1068,19 +1094,23 @@ Checks whether this file asset is a directory. This API uses an asynchronous cal
```js ```js
async function example() { async function example() {
let fileKeyObj = mediaLibrary.FileKey let fileKeyObj = mediaLibrary.FileKey;
let imageType = mediaLibrary.MediaType.IMAGE; let imageType = mediaLibrary.MediaType.IMAGE;
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.isDirectory((err, isDirectory) => { asset.isDirectory((error, isDirectory) => {
// do something if (error) {
console.error('isDirectory failed with error: ' + error);
} else {
console.info('isDirectory result:' + isDirectory);
}
}); });
fetchFileResult.close();
} }
``` ```
...@@ -1104,21 +1134,21 @@ Checks whether this file asset is a directory. This API uses a promise to return ...@@ -1104,21 +1134,21 @@ Checks whether this file asset is a directory. This API uses a promise to return
```js ```js
async function example() { async function example() {
let fileKeyObj = mediaLibrary.FileKey let fileKeyObj = mediaLibrary.FileKey;
let imageType = mediaLibrary.MediaType.IMAGE; let imageType = mediaLibrary.MediaType.IMAGE;
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.isDirectory().then(function(isDirectory){ asset.isDirectory().then((isDirectory) => {
console.info("isDirectory result:"+ isDirectory); console.info('isDirectory result:' + isDirectory);
}).catch(function(err){ }).catch((error) => {
console.error("isDirectory failed with error: " + err); console.error('isDirectory failed with error: ' + error);
}); });
fetchFileResult.close();
} }
``` ```
...@@ -1142,20 +1172,20 @@ Commits the modification in this file asset to the database. This API uses an as ...@@ -1142,20 +1172,20 @@ Commits the modification in this file asset to the database. This API uses an as
```js ```js
async function example() { async function example() {
let fileKeyObj = mediaLibrary.FileKey let fileKeyObj = mediaLibrary.FileKey;
let imageType = mediaLibrary.MediaType.IMAGE; let imageType = mediaLibrary.MediaType.IMAGE;
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.title = 'newtitle'; asset.title = 'newtitle';
asset.commitModify(() => { asset.commitModify(() => {
console.info('commitModify success'); console.info('commitModify successfully');
}); });
fetchFileResult.close();
} }
``` ```
...@@ -1179,18 +1209,18 @@ Commits the modification in this file asset to the database. This API uses a pro ...@@ -1179,18 +1209,18 @@ Commits the modification in this file asset to the database. This API uses a pro
```js ```js
async function example() { async function example() {
let fileKeyObj = mediaLibrary.FileKey let fileKeyObj = mediaLibrary.FileKey;
let imageType = mediaLibrary.MediaType.IMAGE; let imageType = mediaLibrary.MediaType.IMAGE;
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.title = 'newtitle'; asset.title = 'newtitle';
asset.commitModify(); await asset.commitModify();
fetchFileResult.close();
} }
``` ```
...@@ -1200,9 +1230,7 @@ open(mode: string, callback: AsyncCallback&lt;number&gt;): void ...@@ -1200,9 +1230,7 @@ open(mode: string, callback: AsyncCallback&lt;number&gt;): void
Opens this file asset. This API uses an asynchronous callback to return the result. Opens this file asset. This API uses an asynchronous callback to return the result.
> **NOTE** **NOTE**: When a file is opened in 'w' mode, the returned FD cannot be read. However, due to the implementation differences of file systems, some user-mode files opened in 'w' mode can be read by using FD. To perform the read or write operation on a file by using FD, you are advised to open the file in 'rw' mode. The write operations are mutually exclusive. After a write operation is complete, you must call **close** to release the resource.
>
> Currently, the write operations are mutually exclusive. After the write operation is complete, you must call **close** to release the resource.
**Required permissions**: ohos.permission.READ_MEDIA or ohos.permission.WRITE_MEDIA **Required permissions**: ohos.permission.READ_MEDIA or ohos.permission.WRITE_MEDIA
...@@ -1222,12 +1250,12 @@ async function example() { ...@@ -1222,12 +1250,12 @@ async function example() {
let mediaType = mediaLibrary.MediaType.IMAGE; let mediaType = mediaLibrary.MediaType.IMAGE;
let DIR_IMAGE = mediaLibrary.DirectoryType.DIR_IMAGE; let DIR_IMAGE = mediaLibrary.DirectoryType.DIR_IMAGE;
const path = await media.getPublicDirectory(DIR_IMAGE); const path = await media.getPublicDirectory(DIR_IMAGE);
const asset = await media.createAsset(mediaType, "image00003.jpg", path); const asset = await media.createAsset(mediaType, 'image00003.jpg', path);
asset.open('rw', (openError, fd) => { asset.open('rw', (error, fd) => {
if(fd > 0){ if (fd > 0) {
asset.close(fd); asset.close(fd);
}else{ } else {
console.error('File Open Failed!' + openError); console.error('File Open failed with error: ' + error);
} }
}); });
} }
...@@ -1239,9 +1267,7 @@ open(mode: string): Promise&lt;number&gt; ...@@ -1239,9 +1267,7 @@ open(mode: string): Promise&lt;number&gt;
Opens this file asset. This API uses a promise to return the result. Opens this file asset. This API uses a promise to return the result.
> **NOTE** **NOTE**: When a file is opened in 'w' mode, the returned FD cannot be read. However, due to the implementation differences of file systems, some user-mode files opened in 'w' mode can be read by using FD. To perform the read or write operation on a file by using FD, you are advised to open the file in 'rw' mode. The write operations are mutually exclusive. After a write operation is complete, you must call **close** to release the resource.
>
> Currently, the write operations are mutually exclusive. After the write operation is complete, you must call **close** to release the resource.
**Required permissions**: ohos.permission.READ_MEDIA or ohos.permission.WRITE_MEDIA **Required permissions**: ohos.permission.READ_MEDIA or ohos.permission.WRITE_MEDIA
...@@ -1266,13 +1292,11 @@ async function example() { ...@@ -1266,13 +1292,11 @@ async function example() {
let mediaType = mediaLibrary.MediaType.IMAGE; let mediaType = mediaLibrary.MediaType.IMAGE;
let DIR_IMAGE = mediaLibrary.DirectoryType.DIR_IMAGE; let DIR_IMAGE = mediaLibrary.DirectoryType.DIR_IMAGE;
const path = await media.getPublicDirectory(DIR_IMAGE); const path = await media.getPublicDirectory(DIR_IMAGE);
const asset = await media.createAsset(mediaType, "image00003.jpg", path); const asset = await media.createAsset(mediaType, 'image00003.jpg', path);
asset.open('rw') asset.open('rw').then((fd) => {
.then((fd) => { console.info('File open fd: ' + fd);
console.info('File fd!' + fd); }).catch((error) => {
}) console.error('File open failed with error: ' + error);
.catch((err) => {
console.error('File err!' + err);
}); });
} }
``` ```
...@@ -1298,30 +1322,28 @@ Closes this file asset. This API uses an asynchronous callback to return the res ...@@ -1298,30 +1322,28 @@ Closes this file asset. This API uses an asynchronous callback to return the res
```js ```js
async function example() { async function example() {
let fileKeyObj = mediaLibrary.FileKey let fileKeyObj = mediaLibrary.FileKey;
let imageType = mediaLibrary.MediaType.IMAGE; let imageType = mediaLibrary.MediaType.IMAGE;
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.open('rw').then((fd) => { asset.open('rw').then((fd) => {
console.info('File fd!' + fd); console.info('File open fd: ' + fd);
asset.close(fd, (closeErr) => { asset.close(fd, (error) => {
if (closeErr != undefined) { if (error) {
console.error('mediaLibraryTest : close : FAIL ' + closeErr); console.error('asset.close failed with error: ' + error);
console.error('mediaLibraryTest : ASSET_CALLBACK : FAIL');
} else { } else {
console.info("=======asset.close success====>"); console.info('asset.close successfully');
} }
}); });
}) }).catch((error) => {
.catch((err) => { console.error('File open failed with error: ' + error);
console.error('File err!' + err);
}); });
fetchFileResult.close();
} }
``` ```
...@@ -1351,31 +1373,26 @@ Closes this file asset. This API uses a promise to return the result. ...@@ -1351,31 +1373,26 @@ Closes this file asset. This API uses a promise to return the result.
```js ```js
async function example() { async function example() {
let fileKeyObj = mediaLibrary.FileKey let fileKeyObj = mediaLibrary.FileKey;
let imageType = mediaLibrary.MediaType.IMAGE; let imageType = mediaLibrary.MediaType.IMAGE;
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.open('rw').then((fd) => { asset.open('rw').then((fd) => {
console.info('File fd!' + fd); console.info('File fd!' + fd);
asset.close(fd).then((closeErr) => { asset.close(fd).then(() => {
if (closeErr != undefined) { console.info('asset.close successfully');
console.error('mediaLibraryTest : close : FAIL ' + closeErr); }).catch((closeErr) => {
console.error('mediaLibraryTest : ASSET_CALLBACK : FAIL'); console.error('asset.close fail, closeErr: ' + closeErr);
} else {
console.info("=======asset.close success====>");
}
}); });
}) }).catch((error) => {
.catch((err) => { console.error('open File failed with error: ' + error);
console.error('File err!' + err);
}); });
fetchFileResult.close();
} }
``` ```
...@@ -1399,19 +1416,23 @@ Obtains the thumbnail of this file asset. This API uses an asynchronous callback ...@@ -1399,19 +1416,23 @@ Obtains the thumbnail of this file asset. This API uses an asynchronous callback
```js ```js
async function example() { async function example() {
let fileKeyObj = mediaLibrary.FileKey let fileKeyObj = mediaLibrary.FileKey;
let imageType = mediaLibrary.MediaType.IMAGE; let imageType = mediaLibrary.MediaType.IMAGE;
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.getThumbnail((err, pixelmap) => { asset.getThumbnail((error, pixelmap) => {
console.info('mediaLibraryTest : getThumbnail Successful '+ pixelmap); if (error) {
console.error('mediaLibrary getThumbnail failed with error: ' + error);
} else {
console.info('mediaLibrary getThumbnail Successful, pixelmap ' + JSON.stringify(pixelmap));
}
}); });
fetchFileResult.close();
} }
``` ```
...@@ -1441,15 +1462,19 @@ async function example() { ...@@ -1441,15 +1462,19 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
let size = { width: 720, height: 720 }; let size = { width: 720, height: 720 };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.getThumbnail(size, (err, pixelmap) => { asset.getThumbnail(size, (error, pixelmap) => {
console.info('mediaLibraryTest : getThumbnail Successful '+ pixelmap); if (error) {
console.error('mediaLibrary getThumbnail failed with error: ' + error);
} else {
console.info('mediaLibrary getThumbnail Successful, pixelmap ' + JSON.stringify(pixelmap));
}
}); });
fetchFileResult.close();
} }
``` ```
...@@ -1484,19 +1509,17 @@ async function example() { ...@@ -1484,19 +1509,17 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
let size = { width: 720, height: 720 }; let size = { width: 720, height: 720 };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.getThumbnail(size) asset.getThumbnail(size).then((pixelmap) => {
.then((pixelmap) => { console.info('mediaLibrary getThumbnail Successful, pixelmap ' + JSON.stringify(pixelmap));
console.info('mediaLibraryTest : getThumbnail Successful '+ pixelmap); }).catch((error) => {
}) console.error('mediaLibrary getThumbnail failed with error: ' + error);
.catch((err) => {
console.error('mediaLibraryTest : getThumbnail fail, err: ' + err);
}); });
fetchFileResult.close();
} }
``` ```
...@@ -1526,14 +1549,18 @@ async function example() { ...@@ -1526,14 +1549,18 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.favorite(true,function(err){ asset.favorite(true,(error) => {
// do something if (error) {
console.error('mediaLibrary favorite failed with error: ' + error);
} else {
console.info('mediaLibrary favorite Successful');
}
}); });
fetchFileResult.close();
} }
``` ```
...@@ -1568,16 +1595,16 @@ async function example() { ...@@ -1568,16 +1595,16 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.favorite(true).then(function() { asset.favorite(true).then(() => {
console.info("favorite successfully"); console.info('mediaLibrary favorite Successful');
}).catch(function(err){ }).catch((error) => {
console.error("favorite failed with error: " + err); console.error('mediaLibrary favorite failed with error: ' + error);
}); });
fetchFileResult.close();
} }
``` ```
...@@ -1606,18 +1633,18 @@ async function example() { ...@@ -1606,18 +1633,18 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.isFavorite((err, isFavorite) => { asset.isFavorite((error, isFavorite) => {
if (isFavorite) { if (error) {
console.info('FileAsset is favorite'); console.error('mediaLibrary favoriisFavoritete failed with error: ' + error);
}else{ } else {
console.info('FileAsset is not favorite'); console.info('mediaLibrary isFavorite Successful, isFavorite result: ' + isFavorite);
} }
}); });
fetchFileResult.close();
} }
``` ```
...@@ -1646,16 +1673,16 @@ async function example() { ...@@ -1646,16 +1673,16 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.isFavorite().then(function(isFavorite){ asset.isFavorite().then((isFavorite) => {
console.info("isFavorite result:"+ isFavorite); console.info('mediaLibrary isFavorite Successful, isFavorite result: ' + isFavorite);
}).catch(function(err){ }).catch((error) => {
console.error("isFavorite failed with error: " + err); console.error('mediaLibrary favoriisFavoritete failed with error: ' + error);
}); });
fetchFileResult.close();
} }
``` ```
...@@ -1687,15 +1714,18 @@ async function example() { ...@@ -1687,15 +1714,18 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.trash(true, trashCallBack); asset.trash(true, (error) => {
function trashCallBack(err, trash) { if (error) {
console.info('mediaLibraryTest : ASSET_CALLBACK ASSET_CALLBACK trash'); console.error('mediaLibrary trash failed with error: ' + error);
} else {
console.info('mediaLibrary trash Successful');
} }
});
fetchFileResult.close();
} }
``` ```
...@@ -1732,16 +1762,16 @@ async function example() { ...@@ -1732,16 +1762,16 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.trash(true).then(function() { asset.trash(true).then(() => {
console.info("trash successfully"); console.info('trash successfully');
}).catch(function(err){ }).catch((error) => {
console.error("trash failed with error: " + err); console.error('trash failed with error: ' + error);
}); });
fetchFileResult.close();
} }
``` ```
...@@ -1770,18 +1800,18 @@ async function example() { ...@@ -1770,18 +1800,18 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.isTrash((err, isTrash) => { asset.isTrash((error, isTrash) => {
if (isTrash == undefined) { if (error) {
console.error('Failed to get trash state: ' + err); console.error('Failed to get trash state failed with error: ' + error);
return; return;
} }
console.info('Get trash state success: ' + isTrash); console.info('Get trash state successfully, isTrash result: ' + isTrash);
}); });
fetchFileResult.close();
} }
``` ```
...@@ -1810,15 +1840,16 @@ async function example() { ...@@ -1810,15 +1840,16 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
}; };
const fetchFileResult = await media.getFileAssets(getImageOp); const fetchFileResult = await media.getFileAssets(getImageOp);
const asset = await fetchFileResult.getFirstObject(); const asset = await fetchFileResult.getFirstObject();
asset.isTrash().then(function(isTrash){ asset.isTrash().then((isTrash) => {
console.info("isTrash result: " + isTrash); console.info('isTrash result: ' + isTrash);
}).catch(function(err){ }).catch((error) => {
console.error("isTrash failed with error: " + err); console.error('isTrash failed with error: ' + error);
}); });
fetchFileResult.close();
} }
``` ```
...@@ -1849,11 +1880,12 @@ async function example() { ...@@ -1849,11 +1880,12 @@ async function example() {
let getFileCountOneOp = { let getFileCountOneOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [fileType.toString()], selectionArgs: [fileType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
let fetchFileResult = await media.getFileAssets(getFileCountOneOp); let fetchFileResult = await media.getFileAssets(getFileCountOneOp);
const fetchCount = fetchFileResult.getCount(); const fetchCount = fetchFileResult.getCount();
console.info('fetchCount result: ' + fetchCount);
fetchFileResult.close();
} }
``` ```
...@@ -1880,23 +1912,20 @@ async function example() { ...@@ -1880,23 +1912,20 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
let fetchFileResult = await media.getFileAssets(getImageOp); let fetchFileResult = await media.getFileAssets(getImageOp);
const fetchCount = fetchFileResult.getCount(); const fetchCount = fetchFileResult.getCount();
console.info('mediaLibraryTest : count:' + fetchCount); console.info('mediaLibrary fetchFileResult.getCount, count:' + fetchCount);
let fileAsset = await fetchFileResult.getFirstObject(); let fileAsset = await fetchFileResult.getFirstObject();
for (var i = 1; i < fetchCount; i++) { for (var i = 1; i < fetchCount; i++) {
fileAsset = await fetchFileResult.getNextObject(); fileAsset = await fetchFileResult.getNextObject();
if(i == fetchCount - 1) { if(i == fetchCount - 1) {
console.info('mediaLibraryTest : isLast');
var result = fetchFileResult.isAfterLast(); var result = fetchFileResult.isAfterLast();
console.info('mediaLibraryTest : isAfterLast:' + result); console.info('mediaLibrary fileAsset isAfterLast result: ' + result);
console.info('mediaLibraryTest : isAfterLast end');
fetchFileResult.close();
} }
} }
fetchFileResult.close();
} }
``` ```
...@@ -1917,8 +1946,7 @@ async function example() { ...@@ -1917,8 +1946,7 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
let fetchFileResult = await media.getFileAssets(getImageOp); let fetchFileResult = await media.getFileAssets(getImageOp);
fetchFileResult.close(); fetchFileResult.close();
...@@ -1948,17 +1976,17 @@ async function example() { ...@@ -1948,17 +1976,17 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
let fetchFileResult = await media.getFileAssets(getImageOp); let fetchFileResult = await media.getFileAssets(getImageOp);
fetchFileResult.getFirstObject((err, fileAsset) => { fetchFileResult.getFirstObject((error, fileAsset) => {
if (err) { if (error) {
console.error('Failed '); console.error('fetchFileResult getFirstObject failed with error: ' + error);
return; return;
} }
console.info('fileAsset.displayName : ' + fileAsset.displayName); console.info('getFirstObject successfully, displayName : ' + fileAsset.displayName);
}) })
fetchFileResult.close();
} }
``` ```
...@@ -1985,15 +2013,15 @@ async function example() { ...@@ -1985,15 +2013,15 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
let fetchFileResult = await media.getFileAssets(getImageOp); let fetchFileResult = await media.getFileAssets(getImageOp);
fetchFileResult.getFirstObject().then(function(fileAsset){ fetchFileResult.getFirstObject().then((fileAsset) => {
console.info("getFirstObject successfully:"+ JSON.stringify(fileAsset)); console.info('getFirstObject successfully, displayName: ' + fileAsset.displayName);
}).catch(function(err){ }).catch((error) => {
console.error("getFirstObject failed with error: " + err); console.error('getFirstObject failed with error: ' + error);
}); });
fetchFileResult.close();
} }
``` ```
...@@ -2002,6 +2030,9 @@ async function example() { ...@@ -2002,6 +2030,9 @@ async function example() {
getNextObject(callback: AsyncCallback&lt;FileAsset&gt;): void getNextObject(callback: AsyncCallback&lt;FileAsset&gt;): void
Obtains the next file asset in the result set. This API uses an asynchronous callback to return the result. Obtains the next file asset in the result set. This API uses an asynchronous callback to return the result.
> **NOTE**
>
> Before using this API, you must use [getFirstObject](#getfirstobject7) to obtain the first file asset and then use [isAfterLast](#isafterlast7) to ensure that the cursor does not point to the last file asset in the result set.
**System capability**: SystemCapability.Multimedia.MediaLibrary.Core **System capability**: SystemCapability.Multimedia.MediaLibrary.Core
...@@ -2020,18 +2051,22 @@ async function example() { ...@@ -2020,18 +2051,22 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
let fetchFileResult = await media.getFileAssets(getImageOp); let fetchFileResult = await media.getFileAssets(getImageOp);
fetchFileResult.getNextObject((err, fileAsset) => { let fileAsset = await fetchFileResult.getFirstObject();
if (err) { if (! fetchFileResult.isAfterLast) {
console.error('Failed '); fetchFileResult.getNextObject((error, fileAsset) => {
if (error) {
console.error('fetchFileResult getNextObject failed with error: ' + error);
return; return;
} }
console.log('fileAsset.displayName : ' + fileAsset.displayName); console.log('fetchFileResult getNextObject successfully, displayName: ' + fileAsset.displayName);
}) })
}
fetchFileResult.close();
} }
``` ```
### getNextObject<sup>7+</sup> ### getNextObject<sup>7+</sup>
...@@ -2039,6 +2074,9 @@ async function example() { ...@@ -2039,6 +2074,9 @@ async function example() {
getNextObject(): Promise&lt;FileAsset&gt; getNextObject(): Promise&lt;FileAsset&gt;
Obtains the next file asset in the result set. This API uses a promise to return the result. Obtains the next file asset in the result set. This API uses a promise to return the result.
> **NOTE**
>
> Before using this API, you must use [getFirstObject](#getfirstobject7) to obtain the first file asset and then use [isAfterLast](#isafterlast7) to ensure that the cursor does not point to the last file asset in the result set.
**System capability**: SystemCapability.Multimedia.MediaLibrary.Core **System capability**: SystemCapability.Multimedia.MediaLibrary.Core
...@@ -2057,13 +2095,18 @@ async function example() { ...@@ -2057,13 +2095,18 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
let fetchFileResult = await media.getFileAssets(getImageOp); let fetchFileResult = await media.getFileAssets(getImageOp);
const fetchCount = fetchFileResult.getCount(); let fileAsset = await fetchFileResult.getFirstObject();
console.info('mediaLibraryTest : count:' + fetchCount); if (! fetchFileResult.isAfterLast) {
let fileAsset = await fetchFileResult.getNextObject(); fetchFileResult.getNextObject().then((fileAsset) => {
console.info('fetchFileResult getNextObject successfully, displayName: ' + fileAsset.displayName);
}).catch((error) => {
console.error('fetchFileResult getNextObject failed with error: ' + error);
})
}
fetchFileResult.close();
} }
``` ```
...@@ -2090,17 +2133,17 @@ async function example() { ...@@ -2090,17 +2133,17 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
let fetchFileResult = await media.getFileAssets(getImageOp); let fetchFileResult = await media.getFileAssets(getImageOp);
fetchFileResult.getLastObject((err, fileAsset) => { fetchFileResult.getLastObject((error, fileAsset) => {
if (err) { if (error) {
console.error('Failed '); console.error('getLastObject failed with error: ' + error);
return; return;
} }
console.info('fileAsset.displayName : ' + fileAsset.displayName); console.info('getLastObject successfully, displayName: ' + fileAsset.displayName);
}) })
fetchFileResult.close();
} }
``` ```
...@@ -2127,11 +2170,15 @@ async function example() { ...@@ -2127,11 +2170,15 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
let fetchFileResult = await media.getFileAssets(getImageOp); let fetchFileResult = await media.getFileAssets(getImageOp);
let lastObject = await fetchFileResult.getLastObject(); fetchFileResult.getLastObject().then((fileAsset) => {
console.info('getLastObject successfully, displayName: ' + fileAsset.displayName);
}).catch((error) => {
console.error('getLastObject failed with error: ' + error);
});
fetchFileResult.close();
} }
``` ```
...@@ -2147,7 +2194,7 @@ Obtains a file asset with the specified index in the result set. This API uses a ...@@ -2147,7 +2194,7 @@ Obtains a file asset with the specified index in the result set. This API uses a
| Name | Type | Mandatory | Description | | Name | Type | Mandatory | Description |
| -------- | ---------------------------------------- | ---- | ------------------ | | -------- | ---------------------------------------- | ---- | ------------------ |
| index | number | Yes | Index of the file asset to obtain. The value starts from **0**. | | index | number | Yes | Index of the file to obtain. The value starts from 0 and must be smaller than the **count** value of the result set. |
| callback | AsyncCallback&lt;[FileAsset](#fileasset7)&gt; | Yes | Callback used to return the last file asset.| | callback | AsyncCallback&lt;[FileAsset](#fileasset7)&gt; | Yes | Callback used to return the last file asset.|
**Example** **Example**
...@@ -2159,17 +2206,17 @@ async function example() { ...@@ -2159,17 +2206,17 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
let fetchFileResult = await media.getFileAssets(getImageOp); let fetchFileResult = await media.getFileAssets(getImageOp);
fetchFileResult.getPositionObject(0, (err, fileAsset) => { fetchFileResult.getPositionObject(0, (error, fileAsset) => {
if (err) { if (error) {
console.error('Failed '); console.error('getPositionObject failed with error: ' + error);
return; return;
} }
console.info('fileAsset.displayName : ' + fileAsset.displayName); console.info('getPositionObject successfully, displayName: ' + fileAsset.displayName);
}) })
fetchFileResult.close();
} }
``` ```
...@@ -2185,7 +2232,7 @@ Obtains a file asset with the specified index in the result set. This API uses a ...@@ -2185,7 +2232,7 @@ Obtains a file asset with the specified index in the result set. This API uses a
| Name | Type | Mandatory | Description | | Name | Type | Mandatory | Description |
| ----- | ------ | ---- | -------------- | | ----- | ------ | ---- | -------------- |
| index | number | Yes | Index of the file asset to obtain. The value starts from **0**.| | index | number | Yes | Index of the file to obtain. The value starts from 0 and must be smaller than the **count** value of the result set.|
**Return value** **Return value**
...@@ -2202,15 +2249,15 @@ async function example() { ...@@ -2202,15 +2249,15 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
let fetchFileResult = await media.getFileAssets(getImageOp); let fetchFileResult = await media.getFileAssets(getImageOp);
fetchFileResult.getPositionObject(1) .then(function (fileAsset){ fetchFileResult.getPositionObject(0).then((fileAsset) => {
console.info('fileAsset.displayName : ' + fileAsset.displayName); console.info('getPositionObject successfully, displayName: ' + fileAsset.displayName);
}).catch(function (err) { }).catch((error) => {
console.error("getFileAssets failed with error: " + err); console.error('getPositionObject failed with error: ' + error);
}); });
fetchFileResult.close();
} }
``` ```
...@@ -2226,7 +2273,7 @@ Obtains all the file assets in the result set. This API uses an asynchronous cal ...@@ -2226,7 +2273,7 @@ Obtains all the file assets in the result set. This API uses an asynchronous cal
| Name | Type | Mandatory | Description | | Name | Type | Mandatory | Description |
| -------- | ---------------------------------------- | ---- | -------------------- | | -------- | ---------------------------------------- | ---- | -------------------- |
| callback | AsyncCallback<Array<[FileAsset](#fileasset7)>> | Yes | Callback used to return the file assets.| | callback | AsyncCallback&lt;Array&lt;[FileAsset](#fileasset7)&gt;&gt; | Yes | Callback used to return the file assets.|
**Example** **Example**
...@@ -2237,19 +2284,19 @@ async function example() { ...@@ -2237,19 +2284,19 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
let fetchFileResult = await media.getFileAssets(getImageOp); let fetchFileResult = await media.getFileAssets(getImageOp);
fetchFileResult.getAllObject((err, fileAsset) => { fetchFileResult.getAllObject((error, fileAssetList) => {
if (err) { if (error) {
console.error('Failed '); console.error('getAllObject failed with error: ' + error);
return; return;
} }
for (let i = 0; i < fetchFileResult.getCount(); i++) { for (let i = 0; i < fetchFileResult.getCount(); i++) {
console.info('fileAsset.displayName : ' + fileAsset[i].displayName); console.info('getAllObject fileAssetList ' + i + ' displayName: ' + fileAssetList[i].displayName);
} }
}) })
fetchFileResult.close();
} }
``` ```
...@@ -2265,7 +2312,7 @@ Obtains all the file assets in the result set. This API uses a promise to return ...@@ -2265,7 +2312,7 @@ Obtains all the file assets in the result set. This API uses a promise to return
| Type | Description | | Type | Description |
| ---------------------------------------- | --------------------- | | ---------------------------------------- | --------------------- |
| Promise<Array<[FileAsset](#fileasset7)>> | Promise used to return the file assets.| | Promise&lt;Array&lt;[FileAsset](#fileasset7)&gt;&gt; | Promise used to return the file assets.|
**Example** **Example**
...@@ -2276,11 +2323,17 @@ async function example() { ...@@ -2276,11 +2323,17 @@ async function example() {
let getImageOp = { let getImageOp = {
selections: fileKeyObj.MEDIA_TYPE + '= ?', selections: fileKeyObj.MEDIA_TYPE + '= ?',
selectionArgs: [imageType.toString()], selectionArgs: [imageType.toString()],
order: fileKeyObj.DATE_ADDED + " DESC", order: fileKeyObj.DATE_ADDED + ' DESC',
extendArgs: "",
}; };
let fetchFileResult = await media.getFileAssets(getImageOp); let fetchFileResult = await media.getFileAssets(getImageOp);
var data = fetchFileResult.getAllObject(); fetchFileResult.getAllObject().then((fileAssetList) => {
for (let i = 0; i < fetchFileResult.getCount(); i++) {
console.info('getAllObject fileAssetList ' + i + ' displayName: ' + fileAssetList[i].displayName);
}
}).catch((error) => {
console.error('getAllObject failed with error: ' + error);
});
fetchFileResult.close();
} }
``` ```
...@@ -2329,12 +2382,12 @@ async function example() { ...@@ -2329,12 +2382,12 @@ async function example() {
const albumList = await media.getAlbums(AlbumNoArgsfetchOp); const albumList = await media.getAlbums(AlbumNoArgsfetchOp);
const album = albumList[0]; const album = albumList[0];
album.albumName = 'hello'; album.albumName = 'hello';
album.commitModify((err) => { album.commitModify((error) => {
if (err) { if (error) {
console.error('Failed '); console.error('commitModify failed with error: ' + error);
return; return;
} }
console.info('Modify successful.'); console.info('commitModify successful.');
}) })
} }
``` ```
...@@ -2366,10 +2419,10 @@ async function example() { ...@@ -2366,10 +2419,10 @@ async function example() {
const albumList = await media.getAlbums(AlbumNoArgsfetchOp); const albumList = await media.getAlbums(AlbumNoArgsfetchOp);
const album = albumList[0]; const album = albumList[0];
album.albumName = 'hello'; album.albumName = 'hello';
album.commitModify().then(function() { album.commitModify().then(() => {
console.info("commitModify successfully"); console.info('commitModify successfully');
}).catch(function(err){ }).catch((error) => {
console.error("commitModify failed with error: " + err); console.error('commitModify failed with error: ' + error);
}); });
} }
``` ```
...@@ -2403,12 +2456,19 @@ async function example() { ...@@ -2403,12 +2456,19 @@ async function example() {
selections: '', selections: '',
selectionArgs: [], selectionArgs: [],
} }
// Obtain the albums that meet the retrieval options and return the album list.
const albumList = await media.getAlbums(AlbumNoArgsfetchOp); const albumList = await media.getAlbums(AlbumNoArgsfetchOp);
const album = albumList[0]; const album = albumList[0];
album.getFileAssets(fileNoArgsfetchOp, getFileAssetsCallBack); // Obtain an album from the album list and obtain all media assets that meet the retrieval options in the album.
function getFileAssetsCallBack(err, fetchFileResult) { album.getFileAssets(fileNoArgsfetchOp, (error, fetchFileResult) => {
// do something if (error) {
console.error('album getFileAssets failed with error: ' + error);
return;
} }
let count = fetchFileResult.getcount();
console.info('album getFileAssets successfully, count: ' + count);
});
fetchFileResult.close();
} }
``` ```
...@@ -2446,13 +2506,17 @@ async function example() { ...@@ -2446,13 +2506,17 @@ async function example() {
selections: '', selections: '',
selectionArgs: [], selectionArgs: [],
}; };
// Obtain the albums that meet the retrieval options and return the album list.
const albumList = await media.getAlbums(AlbumNoArgsfetchOp); const albumList = await media.getAlbums(AlbumNoArgsfetchOp);
const album = albumList[0]; const album = albumList[0];
album.getFileAssets(fileNoArgsfetchOp).then(function(albumFetchFileResult){ // Obtain an album from the album list and obtain all media assets that meet the retrieval options in the album.
console.info("getFileAssets successfully: " + JSON.stringify(albumFetchFileResult)); album.getFileAssets(fileNoArgsfetchOp).then((albumFetchFileResult) => {
}).catch(function(err){ let count = fetchFileResult.getcount();
console.error("getFileAssets failed with error: " + err); console.info('album getFileAssets successfully, count: ' + count);
}).catch((error) => {
console.error('album getFileAssets failed with error: ' + error);
}); });
fetchFileResult.close();
} }
``` ```
...@@ -2498,25 +2562,25 @@ Enumerates key file information. ...@@ -2498,25 +2562,25 @@ Enumerates key file information.
| Name | Value | Description | | Name | Value | Description |
| ------------- | ------------------- | ---------------------------------------------------------- | | ------------- | ------------------- | ---------------------------------------------------------- |
| ID | "file_id" | File ID. | | ID | 'file_id' | File ID. |
| RELATIVE_PATH | "relative_path" | Relative public directory of the file. | | RELATIVE_PATH | 'relative_path' | Relative public directory of the file. |
| DISPLAY_NAME | "display_name" | Display file name. | | DISPLAY_NAME | 'display_name' | Display file name. |
| PARENT | "parent" | Parent directory ID. | | PARENT | 'parent' | Parent directory ID. |
| MIME_TYPE | "mime_type" | Extended file attributes. | | MIME_TYPE | 'mime_type' | Extended file attributes, such as image/, video/, and file/*. |
| MEDIA_TYPE | "media_type" | Media type. | | MEDIA_TYPE | 'media_type' | Media type. |
| SIZE | "size" | File size, in bytes. | | SIZE | 'size' | File size, in bytes. |
| DATE_ADDED | "date_added" | Date when the file was added. The value is the number of seconds elapsed since the Epoch time. | | DATE_ADDED | 'date_added' | Date when the file was added. The value is the number of seconds elapsed since the Epoch time. |
| DATE_MODIFIED | "date_modified" | Date when the file content (not the file name) was last modified. The value is the number of seconds elapsed since the Epoch time.| | DATE_MODIFIED | 'date_modified' | Date when the file content (not the file name) was last modified. The value is the number of seconds elapsed since the Epoch time.|
| DATE_TAKEN | "date_taken" | Date when the file (photo) was taken. The value is the number of seconds elapsed since the Epoch time. | | DATE_TAKEN | 'date_taken' | Date when the file (photo) was taken. The value is the number of seconds elapsed since the Epoch time. |
| TITLE | "title" | Title in the file. | | TITLE | 'title' | Title in the file. |
| ARTIST | "artist" | Artist of the file. | | ARTIST | 'artist' | Artist of the file. |
| AUDIOALBUM | "audio_album" | Audio album. | | AUDIOALBUM | 'audio_album' | Audio album. |
| DURATION | "duration" | Duration, in ms. | | DURATION | 'duration' | Duration, in ms. |
| WIDTH | "width" | Image width, in pixels. | | WIDTH | 'width' | Image width, in pixels. |
| HEIGHT | "height" | Image height, in pixels. | | HEIGHT | 'height' | Image height, in pixels. |
| ORIENTATION | "orientation" | Image display direction (clockwise rotation angle, for example, 0, 90, and 180, in degrees).| | ORIENTATION | 'orientation' | Image display direction (clockwise rotation angle, for example, 0, 90, and 180, in degrees).|
| ALBUM_ID | "bucket_id" | ID of the album to which the file belongs. | | ALBUM_ID | 'bucket_id' | ID of the album to which the file belongs. |
| ALBUM_NAME | "bucket_display_name" | Name of the album to which the file belongs. | | ALBUM_NAME | 'bucket_display_name' | Name of the album to which the file belongs. |
## DirectoryType<sup>8+</sup> ## DirectoryType<sup>8+</sup>
...@@ -2559,9 +2623,9 @@ Describes options for fetching media files. ...@@ -2559,9 +2623,9 @@ Describes options for fetching media files.
| Name | Type | Readable| Writable| Description | | Name | Type | Readable| Writable| Description |
| ----------------------- | ------------------- | ---- | ---- | ------------------------------------------------------------ | | ----------------------- | ------------------- | ---- | ---- | ------------------------------------------------------------ |
| selections | string | Yes | Yes | Conditions for fetching files. The enumerated values in [FileKey](#filekey8) are used as the column names of the conditions. Example:<br>selections: mediaLibrary.FileKey.MEDIA_TYPE + '= ? OR ' +mediaLibrary.FileKey.MEDIA_TYPE + '= ?', | | selections | string | Yes | Yes | Conditions for fetching files. The enumerated values in [FileKey](#filekey8) are used as the column names of the conditions. Example:<br>selections: mediaLibrary.FileKey.MEDIA_TYPE + '= ? OR ' + mediaLibrary.FileKey.MEDIA_TYPE + '= ?', |
| selectionArgs | Array&lt;string&gt; | Yes | Yes | Value of the condition, which corresponds to the value of the condition column in **selections**.<br>Example:<br>selectionArgs: [mediaLibrary.MediaType.IMAGE.toString(), mediaLibrary.MediaType.VIDEO.toString()], | | selectionArgs | Array&lt;string&gt; | Yes | Yes | Value of the condition, which corresponds to the value of the condition column in **selections**.<br>Example:<br>selectionArgs: [mediaLibrary.MediaType.IMAGE.toString(), mediaLibrary.MediaType.VIDEO.toString()], |
| order | string | Yes | Yes | Sorting mode of the search results, which can be ascending or descending. The enumerated values in [FileKey](#filekey8) are used as the columns for sorting the search results. Example:<br>Ascending: order: mediaLibrary.FileKey.DATE_ADDED + " ASC"<br>Descending: order: mediaLibrary.FileKey.DATE_ADDED + " DESC"| | order | string | Yes | Yes | Sorting mode of the search results, which can be ascending or descending. The enumerated values in [FileKey](#filekey8) are used as the columns for sorting the search results. Example:<br>Ascending: order: mediaLibrary.FileKey.DATE_ADDED + ' ASC'<br>Descending: order: mediaLibrary.FileKey.DATE_ADDED + ' DESC'|
| uri<sup>8+</sup> | string | Yes | Yes | File URI. | | uri<sup>8+</sup> | string | Yes | Yes | File URI. |
| networkId<sup>8+</sup> | string | Yes | Yes | Network ID of the registered device. | | networkId<sup>8+</sup> | string | Yes | Yes | Network ID of the registered device. |
| extendArgs<sup>8+</sup> | string | Yes | Yes | Extended parameters for fetching the files. Currently, no extended parameters are available. | | extendArgs<sup>8+</sup> | string | Yes | Yes | Extended parameters for fetching the files. Currently, no extended parameters are available. |
......
# @ohos.reminderAgentManager (Reminder Agent Management) # @ohos.reminderAgentManager (reminderAgentManager)
The **reminderAgentManager** module provides APIs for publishing scheduled reminders through the reminder agent. The **reminderAgentManager** module provides APIs for publishing scheduled reminders through the reminder agent.
...@@ -696,8 +696,8 @@ Sets the time information for a calendar reminder. ...@@ -696,8 +696,8 @@ Sets the time information for a calendar reminder.
| Name| Type| Mandatory| Description| | Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- | | -------- | -------- | -------- | -------- |
| year | number | Yes| Year.| | year | number | Yes| Year.|
| month | number | Yes| Month.| | month | number | Yes| Month. The value ranges from 1 to 12.|
| day | number | Yes| Date.| | day | number | Yes| Day. The value ranges from 1 to 31.|
| hour | number | Yes| Hour.| | hour | number | Yes| Hour. The value ranges from 0 to 23.|
| minute | number | Yes| Minute.| | minute | number | Yes| Minute. The value ranges from 0 to 59.|
| second | number | No| Second.| | second | number | No| Second. The value ranges from 0 to 59.|
...@@ -26,7 +26,7 @@ Formats the specified values and inserts them into the string by replacing the w ...@@ -26,7 +26,7 @@ Formats the specified values and inserts them into the string by replacing the w
| Name | Type | Mandatory| Description | | Name | Type | Mandatory| Description |
| ------- | -------- | ---- | -------------- | | ------- | -------- | ---- | -------------- |
| format | string | Yes | String.| | format | string | Yes | String.|
| ...args | Object[] | No | Values to format. The formatted values will be replaced the wildcard in the string. | | ...args | Object[] | No | Values to format. The formatted values will replace the wildcard in the string. If this parameter is not set, the first parameter is returned by default.|
**Return value** **Return value**
...@@ -69,6 +69,20 @@ let result = util.errnoToString(errnum); ...@@ -69,6 +69,20 @@ let result = util.errnoToString(errnum);
console.log("result = " + result); console.log("result = " + result);
``` ```
**Some error code and message examples**
| Error Code| Message |
| ------ | -------------------------------- |
| -1 | operation not permitted |
| -2 | no such file or directory |
| -3 | no such process |
| -4 | interrupted system call |
| -5 | i/o error |
| -11 | resource temporarily unavailable |
| -12 | not enough memory |
| -13 | permission denied |
| -100 | network is down |
## util.callbackWrapper ## util.callbackWrapper
callbackWrapper(original: Function): (err: Object, value: Object )=&gt;void callbackWrapper(original: Function): (err: Object, value: Object )=&gt;void
...@@ -92,15 +106,14 @@ Calls back an asynchronous function. In the callback, the first parameter indica ...@@ -92,15 +106,14 @@ Calls back an asynchronous function. In the callback, the first parameter indica
**Example** **Example**
```js ```js
async function promiseFn() { async function fn() {
return Promise.reject('value'); return 'hello world';
} }
let err = "type err"; let cb = util.callbackWrapper(fn);
let cb = util.callbackWrapper(promiseFn); cb((err, ret) => {
cb((err, ret) => { if (err) throw err;
console.log(err);
console.log(ret); console.log(ret);
}, err) });
``` ```
## util.promisify<sup>9+</sup> ## util.promisify<sup>9+</sup>
...@@ -126,24 +139,30 @@ Processes an asynchronous function and returns a promise. ...@@ -126,24 +139,30 @@ Processes an asynchronous function and returns a promise.
**Example** **Example**
```js ```js
function aysnFun(str1, str2) { function fun(num, callback) {
if (typeof str1 === 'object' && typeof str2 === 'object') { if (typeof num === 'number') {
return str2 callback(null, num + 3);
} else { } else {
return str1 callback("type err");
}
} }
let newPromiseObj = util.promisify(aysnFun); }
newPromiseObj({ err: "type error" }, {value:'HelloWorld'}).then(res => {
const addCall = util.promisify(fun);
(async () => {
try {
let res = await addCall(2);
console.log(res); console.log(res);
}) } catch (err) {
console.log(err);
}
})();
``` ```
## util.randomUUID<sup>9+</sup> ## util.generateRandomUUID<sup>9+</sup>
randomUUID(entropyCache?: boolean): string generateRandomUUID(entropyCache?: boolean): string
Uses a secure random number generator to generate a random universally unique identifier (UUID) of RFC 4122 version 4. Uses a secure random number generator to generate a random universally unique identifier (UUID) of the string type in RFC 4122 version 4.
**System capability**: SystemCapability.Utils.Lang **System capability**: SystemCapability.Utils.Lang
...@@ -162,17 +181,17 @@ Uses a secure random number generator to generate a random universally unique id ...@@ -162,17 +181,17 @@ Uses a secure random number generator to generate a random universally unique id
**Example** **Example**
```js ```js
let uuid = util.randomUUID(true); let uuid = util.generateRandomUUID(true);
console.log("RFC 4122 Version 4 UUID:" + uuid); console.log("RFC 4122 Version 4 UUID:" + uuid);
// Output: // Output:
// RFC 4122 Version 4 UUID:88368f2a-d5db-47d8-a05f-534fab0a0045 // RFC 4122 Version 4 UUID:88368f2a-d5db-47d8-a05f-534fab0a0045
``` ```
## util.randomBinaryUUID<sup>9+</sup> ## util.generateRandomBinaryUUID<sup>9+</sup>
randomBinaryUUID(entropyCache?: boolean): Uint8Array generateRandomBinaryUUID(entropyCache?: boolean): Uint8Array
Uses a secure random number generator to generate a random binary UUID of RFC 4122 version 4. Uses a secure random number generator to generate a random UUID of the Uint8Array type in RFC 4122 version 4.
**System capability**: SystemCapability.Utils.Lang **System capability**: SystemCapability.Utils.Lang
...@@ -191,7 +210,7 @@ Uses a secure random number generator to generate a random binary UUID of RFC 41 ...@@ -191,7 +210,7 @@ Uses a secure random number generator to generate a random binary UUID of RFC 41
**Example** **Example**
```js ```js
let uuid = util.randomBinaryUUID(true); let uuid = util.generateRandomBinaryUUID(true);
console.log(JSON.stringify(uuid)); console.log(JSON.stringify(uuid));
// Output: // Output:
// 138,188,43,243,62,254,70,119,130,20,235,222,199,164,140,150 // 138,188,43,243,62,254,70,119,130,20,235,222,199,164,140,150
...@@ -201,7 +220,7 @@ Uses a secure random number generator to generate a random binary UUID of RFC 41 ...@@ -201,7 +220,7 @@ Uses a secure random number generator to generate a random binary UUID of RFC 41
parseUUID(uuid: string): Uint8Array parseUUID(uuid: string): Uint8Array
Parses a UUID from a string, as described in RFC 4122 version 4. Converts the UUID of the string type generated by **generateRandomUUID** to the UUID of the **Uint8Array** type generated by **generateRandomBinaryUUID**, as described in RFC 4122 version 4.
**System capability**: SystemCapability.Utils.Lang **System capability**: SystemCapability.Utils.Lang
...@@ -243,7 +262,7 @@ Formats the specified values and inserts them into the string by replacing the w ...@@ -243,7 +262,7 @@ Formats the specified values and inserts them into the string by replacing the w
| Name| Type| Mandatory| Description| | Name| Type| Mandatory| Description|
| -------- | -------- | -------- | -------- | | -------- | -------- | -------- | -------- |
| format | string | Yes| String.| | format | string | Yes| String.|
| ...args | Object[] | No| Values to format. The formatted values will be replaced the wildcard in the string.| | ...args | Object[] | No| Values to format. The formatted values will replace the wildcard in the string. If this parameter is not set, the first parameter is returned by default.|
**Return value** **Return value**
...@@ -361,8 +380,8 @@ Creates a **TextDecoder** object. It provides the same function as the deprecate ...@@ -361,8 +380,8 @@ Creates a **TextDecoder** object. It provides the same function as the deprecate
**Example** **Example**
```js ```js
let textDecoder = new util.TextDecoder() let result = util.TextDecoder.create('utf-8', { ignoreBOM : true })
textDecoder.create('utf-8', { ignoreBOM : true }); let retStr = result.encoding
``` ```
### decodeWithStream<sup>9+</sup> ### decodeWithStream<sup>9+</sup>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册