1# @ohos.file.picker (选择器) 2 3> **说明:** 4> 该模块接口从API Version 9开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 5 6选择器(Picker)是一个封装PhotoViewPicker、DocumentViewPicker、AudioViewPicker等系统应用选择与保存能力的模块。应用可以自行选择使用哪种picker实现文件选择和文件保存的功能。 7 8## 导入模块 9```js 10import picker from '@ohos.file.picker'; 11``` 12 13## PhotoViewPicker 14 15图库选择器对象,用来支撑选择图片/视频和保存图片/视频等用户场景。在使用前,需要先创建PhotoViewPicker实例。 16 17**系统能力**:SystemCapability.FileManagement.UserFileService 18 19**示例:** 20 21```ts 22let photoPicker = new picker.PhotoViewPicker(); 23``` 24 25### select 26 27select(option?: PhotoSelectOptions) : Promise<PhotoSelectResult> 28 29通过选择模式拉起photoPicker界面,用户可以选择一个或多个图片/视频。接口采用promise异步返回形式,传入可选参数PhotoSelectOptions对象,返回PhotoSelectResult对象。 30 31**系统能力**:SystemCapability.FileManagement.UserFileService 32 33**参数:** 34 35| 参数名 | 类型 | 必填 | 说明 | 36| ------- | ------- | ---- | -------------------------- | 37| option | [PhotoSelectOptions](#photoselectoptions) | 否 | photoPicker选择选项 | 38 39**返回值:** 40 41| 类型 | 说明 | 42| ----------------------------- | :---- | 43| Promise<[PhotoSelectResult](#photoselectresult)> | Promise对象。返回photoPicker选择后的结果集 | 44 45**示例:** 46 47```ts 48async function example() { 49 try { 50 let PhotoSelectOptions = new picker.PhotoSelectOptions(); 51 PhotoSelectOptions.MIMEType = picker.PhotoViewMIMETypes.IMAGE_TYPE; 52 PhotoSelectOptions.maxSelectNumber = 5; 53 let photoPicker = new picker.PhotoViewPicker(); 54 photoPicker.select(PhotoSelectOptions).then((PhotoSelectResult) => { 55 console.info('PhotoViewPicker.select successfully, PhotoSelectResult uri: ' + JSON.stringify(PhotoSelectResult)); 56 }).catch((err) => { 57 console.error('PhotoViewPicker.select failed with err: ' + err); 58 }); 59 } catch (err) { 60 console.error('PhotoViewPicker failed with err: ' + err); 61 } 62} 63``` 64 65### select 66 67select(option: PhotoSelectOptions, callback: AsyncCallback<PhotoSelectResult>) : void 68 69通过选择模式拉起photoPicker界面,用户可以选择一个或多个图片/视频。接口采用callback异步返回形式,传入参数PhotoSelectOptions对象,返回PhotoSelectResult对象。 70 71**系统能力**:SystemCapability.FileManagement.UserFileService 72 73**参数:** 74 75| 参数名 | 类型 | 必填 | 说明 | 76| ------- | ------- | ---- | -------------------------- | 77| option | [PhotoSelectOptions](#photoselectoptions) | 是 | photoPicker选择选项 | 78| callback | AsyncCallback<[PhotoSelectResult](#photoselectresult)> | 是 | callback 返回photoPicker选择后的结果集 | 79 80**示例:** 81 82```ts 83async function example() { 84 try { 85 let PhotoSelectOptions = new picker.PhotoSelectOptions(); 86 PhotoSelectOptions.MIMEType = picker.PhotoViewMIMETypes.IMAGE_TYPE; 87 PhotoSelectOptions.maxSelectNumber = 5; 88 let photoPicker = new picker.PhotoViewPicker(); 89 photoPicker.select(PhotoSelectOptions, (err, PhotoSelectResult) => { 90 if (err) { 91 console.error('PhotoViewPicker.select failed with err: ' + err); 92 return; 93 } 94 console.info('PhotoViewPicker.select successfully, PhotoSelectResult uri: ' + JSON.stringify(PhotoSelectResult)); 95 }); 96 } catch (err) { 97 console.error('PhotoViewPicker failed with err: ' + err); 98 } 99} 100``` 101 102### select 103 104select(callback: AsyncCallback<PhotoSelectResult>) : void 105 106通过选择模式拉起photoPicker界面,用户可以选择一个或多个图片/视频。接口采用callback异步返回形式,返回PhotoSelectResult对象。 107 108**系统能力**:SystemCapability.FileManagement.UserFileService 109 110**参数:** 111 112| 参数名 | 类型 | 必填 | 说明 | 113| ------- | ------- | ---- | -------------------------- | 114| callback | AsyncCallback<[PhotoSelectResult](#photoselectresult)> | 是 | callback 返回photoPicker选择后的结果集 | 115 116**示例:** 117 118```ts 119async function example() { 120 try { 121 let photoPicker = new picker.PhotoViewPicker(); 122 photoPicker.select((err, PhotoSelectResult) => { 123 if (err) { 124 console.error('PhotoViewPicker.select failed with err: ' + err); 125 return; 126 } 127 console.info('PhotoViewPicker.select successfully, PhotoSelectResult uri: ' + JSON.stringify(PhotoSelectResult)); 128 }); 129 } catch (err) { 130 console.error('PhotoViewPicker failed with err: ' + err); 131 } 132} 133``` 134 135### save 136 137save(option?: PhotoSaveOptions) : Promise<Array<string>> 138 139通过保存模式拉起photoPicker界面,用户可以保存一个或多个图片/视频。接口采用promise异步返回形式,传入可选参数PhotoSaveOptions对象,返回保存文件的uri数组。 140 141**系统能力**:SystemCapability.FileManagement.UserFileService 142 143**参数:** 144 145| 参数名 | 类型 | 必填 | 说明 | 146| ------- | ------- | ---- | -------------------------- | 147| option | [PhotoSaveOptions](#photosaveoptions) | 否 | photoPicker保存图片或视频文件选项 | 148 149**返回值:** 150 151| 类型 | 说明 | 152| ----------------------------- | :---- | 153| Promise<Array<string>> | Promise对象。返回photoPicker保存图片或视频文件后的结果集 | 154 155**示例:** 156 157```ts 158async function example() { 159 try { 160 let PhotoSaveOptions = new picker.PhotoSaveOptions(); 161 PhotoSaveOptions.newFileNames = ['PhotoViewPicker01.jpg', 'PhotoViewPicker01.mp4']; 162 let photoPicker = new picker.PhotoViewPicker(); 163 photoPicker.save(PhotoSaveOptions).then((PhotoSaveResult) => { 164 console.info('PhotoViewPicker.save successfully, PhotoSaveResult uri: ' + JSON.stringify(PhotoSaveResult)); 165 }).catch((err) => { 166 console.error('PhotoViewPicker.save failed with err: ' + err); 167 }); 168 } catch (err) { 169 console.error('PhotoViewPicker failed with err: ' + err); 170 } 171} 172``` 173 174### save 175 176save(option: PhotoSaveOptions, callback: AsyncCallback<Array<string>>) : void 177 178通过保存模式拉起photoPicker界面,用户可以保存一个或多个图片/视频。接口采用callback异步返回形式,传入参数PhotoSaveOptions对象,返回保存文件的uri数组。 179 180**系统能力**:SystemCapability.FileManagement.UserFileService 181 182**参数:** 183 184| 参数名 | 类型 | 必填 | 说明 | 185| ------- | ------- | ---- | -------------------------- | 186| option | [PhotoSaveOptions](#photosaveoptions) | 是 | photoPicker保存图片或视频文件选项 | 187| callback | AsyncCallback<Array<string>> | 是 | callback 返回photoPicker保存图片或视频文件后的结果集 | 188 189**示例:** 190 191```ts 192async function example() { 193 try { 194 let PhotoSaveOptions = new picker.PhotoSaveOptions(); 195 PhotoSaveOptions.newFileNames = ['PhotoViewPicker02.jpg','PhotoViewPicker02.mp4']; 196 let photoPicker = new picker.PhotoViewPicker(); 197 photoPicker.save(PhotoSaveOptions, (err, PhotoSaveResult) => { 198 if (err) { 199 console.error('PhotoViewPicker.save failed with err: ' + err); 200 return; 201 } 202 console.info('PhotoViewPicker.save successfully, PhotoSaveResult uri: ' + JSON.stringify(PhotoSaveResult)); 203 }); 204 } catch (err) { 205 console.error('PhotoViewPicker failed with err: ' + err); 206 } 207} 208``` 209 210### save 211 212save(callback: AsyncCallback<Array<string>>) : void 213 214通过保存模式拉起photoPicker界面,用户可以保存一个或多个图片/视频。接口采用callback异步返回形式,返回保存文件的uri数组。 215 216**系统能力**:SystemCapability.FileManagement.UserFileService 217 218**参数:** 219 220| 参数名 | 类型 | 必填 | 说明 | 221| ------- | ------- | ---- | -------------------------- | 222| callback | AsyncCallback<Array<string>> | 是 | callback 返回photoPicker保存图片或视频文件后的结果集 | 223 224**示例:** 225 226```ts 227async function example() { 228 try { 229 let photoPicker = new picker.PhotoViewPicker(); 230 photoPicker.save((err, PhotoSaveResult) => { 231 if (err) { 232 console.error('PhotoViewPicker.save failed with err: ' + err); 233 return; 234 } 235 console.info('PhotoViewPicker.save successfully, PhotoSaveResult uri: ' + JSON.stringify(PhotoSaveResult)); 236 }); 237 } catch (err) { 238 console.error('PhotoViewPicker failed with err: ' + err); 239 } 240} 241``` 242 243## DocumentViewPicker 244 245文件选择器对象,用来支撑选择和保存非媒体文件等用户场景,比如各种格式文档。在使用前,需要先创建DocumentViewPicker实例。 246 247**系统能力**:SystemCapability.FileManagement.UserFileService 248 249**示例:** 250 251```ts 252let documentPicker = new picker.DocumentViewPicker(); 253``` 254 255### select 256 257select(option?: DocumentSelectOptions) : Promise<Array<string>> 258 259通过选择模式拉起documentPicker界面,用户可以选择一个或多个文件。接口采用promise异步返回形式,传入可选参数DocumentSelectOptions对象,返回选择文件的uri数组。 260 261**系统能力**:SystemCapability.FileManagement.UserFileService 262 263**参数:** 264 265| 参数名 | 类型 | 必填 | 说明 | 266| ------- | ------- | ---- | -------------------------- | 267| option | [DocumentSelectOptions](#documentselectoptions) | 否 | documentPicker选择选项 | 268 269**返回值:** 270 271| 类型 | 说明 | 272| ----------------------------- | :---- | 273| Promise<Array<string>> | Promise对象。返回documentPicker选择后的结果集 | 274 275**示例:** 276 277```ts 278async function example() { 279 try { 280 let DocumentSelectOptions = new picker.DocumentSelectOptions(); 281 let documentPicker = new picker.DocumentViewPicker(); 282 documentPicker.select(DocumentSelectOptions).then((DocumentSelectResult) => { 283 console.info('DocumentViewPicker.select successfully, DocumentSelectResult uri: ' + JSON.stringify(DocumentSelectResult)); 284 }).catch((err) => { 285 console.error('DocumentViewPicker.select failed with err: ' + err); 286 }); 287 } catch (err) { 288 console.error('DocumentViewPicker failed with err: ' + err); 289 } 290} 291``` 292 293### select 294 295select(option: DocumentSelectOptions, callback: AsyncCallback<Array<string>>) : void 296 297通过选择模式拉起documentPicker界面,用户可以选择一个或多个文件。接口采用callback异步返回形式,传入参数DocumentSelectOptions对象,返回选择文件的uri数组。 298 299**系统能力**:SystemCapability.FileManagement.UserFileService 300 301**参数:** 302 303| 参数名 | 类型 | 必填 | 说明 | 304| ------- | ------- | ---- | -------------------------- | 305| option | [DocumentSelectOptions](#documentselectoptions) | 是 | documentPicker选择选项 | 306| callback | AsyncCallback<Array<string>> | 是 | callback 返回documentPicker选择后的结果集 | 307 308**示例:** 309 310```ts 311async function example() { 312 try { 313 let DocumentSelectOptions = new picker.DocumentSelectOptions(); 314 let documentPicker = new picker.DocumentViewPicker(); 315 documentPicker.select(DocumentSelectOptions, (err, DocumentSelectResult) => { 316 if (err) { 317 console.error('DocumentViewPicker.select failed with err: ' + err); 318 return; 319 } 320 console.info('DocumentViewPicker.select successfully, DocumentSelectResult uri: ' + JSON.stringify(DocumentSelectResult)); 321 }); 322 } catch (err) { 323 console.error('DocumentViewPicker failed with err: ' + err); 324 } 325} 326``` 327 328### select 329 330select(callback: AsyncCallback<Array<string>>) : void 331 332通过选择模式拉起documentPicker界面,用户可以选择一个或多个文件。接口采用callback异步返回形式,返回选择文件的uri数组。 333 334**系统能力**:SystemCapability.FileManagement.UserFileService 335 336**参数:** 337 338| 参数名 | 类型 | 必填 | 说明 | 339| ------- | ------- | ---- | -------------------------- | 340| callback | AsyncCallback<Array<string>> | 是 | callback 返回documentPicker选择后的结果集 | 341 342**示例:** 343 344```ts 345async function example() { 346 try { 347 let documentPicker = new picker.DocumentViewPicker(); 348 documentPicker.select((err, DocumentSelectResult) => { 349 if (err) { 350 console.error('DocumentViewPicker.select failed with err: ' + err); 351 return; 352 } 353 console.info('DocumentViewPicker.select successfully, DocumentSelectResult uri: ' + JSON.stringify(DocumentSelectResult)); 354 }); 355 } catch (err) { 356 console.error('DocumentViewPicker failed with err: ' + err); 357 } 358} 359``` 360 361 362### save 363 364save(option?: DocumentSaveOptions) : Promise<Array<string>> 365 366通过保存模式拉起documentPicker界面,用户可以保存一个或多个文件。接口采用promise异步返回形式,传入可选参数DocumentSaveOptions对象,返回保存文件的uri数组。 367 368**系统能力**:SystemCapability.FileManagement.UserFileService 369 370**参数:** 371 372| 参数名 | 类型 | 必填 | 说明 | 373| ------- | ------- | ---- | -------------------------- | 374| option | [DocumentSaveOptions](#documentsaveoptions) | 否 | documentPicker保存选项 | 375 376**返回值:** 377 378| 类型 | 说明 | 379| ----------------------------- | :---- | 380| Promise<Array<string>> | Promise对象。返回documentPicker保存后的结果集 | 381 382**示例:** 383 384```ts 385async function example() { 386 try { 387 let DocumentSaveOptions = new picker.DocumentSaveOptions(); 388 DocumentSaveOptions.newFileNames = ['DocumentViewPicker01.txt']; 389 let documentPicker = new picker.DocumentViewPicker(); 390 documentPicker.save(DocumentSaveOptions).then((DocumentSaveResult) => { 391 console.info('DocumentViewPicker.save successfully, DocumentSaveResult uri: ' + JSON.stringify(DocumentSaveResult)); 392 }).catch((err) => { 393 console.error('DocumentViewPicker.save failed with err: ' + err); 394 }); 395 } catch (err) { 396 console.error('DocumentViewPicker failed with err: ' + err); 397 } 398} 399``` 400 401### save 402 403save(option: DocumentSaveOptions, callback: AsyncCallback<Array<string>>) : void 404 405通过保存模式拉起documentPicker界面,用户可以保存一个或多个文件。接口采用callback异步返回形式,传入参数DocumentSaveOptions对象,返回保存文件的uri数组。 406 407**系统能力**:SystemCapability.FileManagement.UserFileService 408 409**参数:** 410 411| 参数名 | 类型 | 必填 | 说明 | 412| ------- | ------- | ---- | -------------------------- | 413| option | [DocumentSaveOptions](#documentsaveoptions) | 是 | documentPicker保存选项 | 414| callback | AsyncCallback<Array<string>> | 是 | callback 返回documentPicker保存后的结果集 | 415 416**示例:** 417 418```ts 419async function example() { 420 try { 421 let DocumentSaveOptions = new picker.DocumentSaveOptions(); 422 DocumentSaveOptions.newFileNames = ['DocumentViewPicker02.txt']; 423 let documentPicker = new picker.DocumentViewPicker(); 424 documentPicker.save(DocumentSaveOptions, (err, DocumentSaveResult) => { 425 if (err) { 426 console.error('DocumentViewPicker.save failed with err: ' + err); 427 return; 428 } 429 console.info('DocumentViewPicker.save successfully, DocumentSaveResult uri: ' + JSON.stringify(DocumentSaveResult)); 430 }); 431 } catch (err) { 432 console.error('DocumentViewPicker failed with err: ' + err); 433 } 434} 435``` 436 437### save 438 439save(callback: AsyncCallback<Array<string>>) : void 440 441通过保存模式拉起documentPicker界面,用户可以保存一个或多个文件。接口采用callback异步返回形式,返回保存文件的uri数组。 442 443**系统能力**:SystemCapability.FileManagement.UserFileService 444 445**参数:** 446 447| 参数名 | 类型 | 必填 | 说明 | 448| ------- | ------- | ---- | -------------------------- | 449| callback | AsyncCallback<Array<string>> | 是 | callback 返回documentPicker保存后的结果集 | 450 451**示例:** 452 453```ts 454async function example() { 455 try { 456 let documentPicker = new picker.DocumentViewPicker(); 457 documentPicker.save((err, DocumentSaveResult) => { 458 if (err) { 459 console.error('DocumentViewPicker.save failed with err: ' + err); 460 return; 461 } 462 console.info('DocumentViewPicker.save successfully, DocumentSaveResult uri: ' + JSON.stringify(DocumentSaveResult)); 463 }); 464 } catch (err) { 465 console.error('DocumentViewPicker failed with err: ' + err); 466 } 467} 468``` 469 470## AudioViewPicker 471 472音频选择器对象,用来支撑选择和保存音频类文件等用户场景。在使用前,需要先创建AudioViewPicker实例。 473 474**系统能力**:SystemCapability.FileManagement.UserFileService 475 476**示例:** 477 478```ts 479let audioPicker = new picker.AudioViewPicker(); 480``` 481 482### select 483 484select(option?: AudioSelectOptions) : Promise<Array<string>> 485 486通过选择模式拉起audioPicker界面(目前拉起的是documentPicker,audioPicker在规划中),用户可以选择一个或多个音频文件。接口采用promise异步返回形式,传入可选参数AudioSelectOptions对象,返回选择音频文件的uri数组。 487 488**系统能力**:SystemCapability.FileManagement.UserFileService 489 490**参数:** 491 492| 参数名 | 类型 | 必填 | 说明 | 493| ------- | ------- | ---- | -------------------------- | 494| option | [AudioSelectOptions](#audioselectoptions) | 否 | audioPicker音频选择选项 | 495 496**返回值:** 497 498| 类型 | 说明 | 499| ----------------------------- | :---- | 500| Promise<Array<string>> | Promise对象。返回audioPicker选择音频后的结果集 | 501 502**示例:** 503 504```ts 505async function example() { 506 try { 507 let AudioSelectOptions = new picker.AudioSelectOptions(); 508 let audioPicker = new picker.AudioViewPicker(); 509 audioPicker.select(AudioSelectOptions).then((AudioSelectResult) => { 510 console.info('AudioViewPicker.select successfully, AudioSelectResult uri: ' + JSON.stringify(AudioSelectResult)); 511 }).catch((err) => { 512 console.error('AudioViewPicker.select failed with err: ' + err); 513 }); 514 } catch (err) { 515 console.error('AudioViewPicker failed with err: ' + err); 516 } 517} 518``` 519 520### select 521 522select(option: AudioSelectOptions, callback: AsyncCallback<Array<string>>) : void 523 524通过选择模式拉起audioPicker界面(目前拉起的是documentPicker,audioPicker在规划中),用户可以选择一个或多个音频文件。接口采用callback异步返回形式,传入参数AudioSelectOptions对象,返回选择音频文件的uri数组。 525 526**系统能力**:SystemCapability.FileManagement.UserFileService 527 528**参数:** 529 530| 参数名 | 类型 | 必填 | 说明 | 531| ------- | ------- | ---- | -------------------------- | 532| option | [AudioSelectOptions](#audioselectoptions) | 是 | audioPicker音频选择选项 | 533| callback | AsyncCallback<Array<string>> | 是 | callback 返回audioPicker选择音频后的结果集 | 534 535**示例:** 536 537```ts 538async function example() { 539 try { 540 let AudioSelectOptions = new picker.AudioSelectOptions(); 541 let audioPicker = new picker.AudioViewPicker(); 542 audioPicker.select(AudioSelectOptions, (err, AudioSelectResult) => { 543 if (err) { 544 console.error('AudioViewPicker.select failed with err: ' + err); 545 return; 546 } 547 console.info('AudioViewPicker.select successfully, AudioSelectResult uri: ' + JSON.stringify(AudioSelectResult)); 548 }); 549 } catch (err) { 550 console.error('AudioViewPicker failed with err: ' + err); 551 } 552} 553``` 554 555### select 556 557select(callback: AsyncCallback<Array<string>>) : void 558 559通过选择模式拉起audioPicker界面(目前拉起的是documentPicker,audioPicker在规划中),用户可以选择一个或多个音频文件。接口采用callback异步返回形式,返回选择音频文件的uri数组。 560 561**系统能力**:SystemCapability.FileManagement.UserFileService 562 563**参数:** 564 565| 参数名 | 类型 | 必填 | 说明 | 566| ------- | ------- | ---- | -------------------------- | 567| callback | AsyncCallback<Array<string>> | 是 | callback 返回audioPicker选择音频后的结果集 | 568 569**示例:** 570 571```ts 572async function example() { 573 try { 574 let audioPicker = new picker.AudioViewPicker(); 575 audioPicker.select((err, AudioSelectResult) => { 576 if (err) { 577 console.error('AudioViewPicker.select failed with err: ' + err); 578 return; 579 } 580 console.info('AudioViewPicker.select successfully, AudioSelectResult uri: ' + JSON.stringify(AudioSelectResult)); 581 }); 582 } catch (err) { 583 console.error('AudioViewPicker failed with err: ' + err); 584 } 585} 586``` 587 588### save 589 590save(option?: AudioSaveOptions) : Promise<Array<string>> 591 592通过保存模式拉起audioPicker界面(目前拉起的是documentPicker,audioPicker在规划中),用户可以保存一个或多个音频文件。接口采用promise异步返回形式,传入可选参数AudioSaveOptions对象,返回保存音频文件的uri数组。 593 594**系统能力**:SystemCapability.FileManagement.UserFileService 595 596**参数:** 597 598| 参数名 | 类型 | 必填 | 说明 | 599| ------- | ------- | ---- | -------------------------- | 600| option | [AudioSaveOptions](#audiosaveoptions) | 否 | audioPicker保存音频文件选项 | 601 602**返回值:** 603 604| 类型 | 说明 | 605| ----------------------------- | ---- | 606| Promise<Array<string>> | Promise对象。返回audioPicker保存音频文件后的结果集 | 607 608**示例:** 609 610```ts 611async function example() { 612 try { 613 let AudioSaveOptions = new picker.AudioSaveOptions(); 614 AudioSaveOptions.newFileNames = ['AudioViewPicker01.mp3']; 615 let audioPicker = new picker.AudioViewPicker(); 616 audioPicker.save(AudioSaveOptions).then((AudioSaveResult) => { 617 console.info('AudioViewPicker.save successfully, AudioSaveResult uri: ' + JSON.stringify(AudioSaveResult)) 618 }).catch((err) => { 619 console.error('AudioViewPicker.save failed with err: ' + err); 620 }); 621 } catch (err) { 622 console.error('AudioViewPicker failed with err: ' + err); 623 } 624} 625``` 626 627### save 628 629save(option: AudioSaveOptions, callback: AsyncCallback<Array<string>>) : void 630 631通过保存模式拉起audioPicker界面(目前拉起的是documentPicker,audioPicker在规划中),用户可以保存一个或多个音频文件。接口采用callback异步返回形式,传入参数AudioSaveOptions对象,返回保存音频文件的uri数组。 632 633**系统能力**:SystemCapability.FileManagement.UserFileService 634 635**参数:** 636 637| 参数名 | 类型 | 必填 | 说明 | 638| ------- | ------- | ---- | -------------------------- | 639| option | [AudioSaveOptions](#audiosaveoptions) | 是 | audioPicker保存音频文件选项 | 640| callback | AsyncCallback<Array<string>> | 是 | callback 返回audioPicker保存音频文件后的结果集 | 641 642**示例:** 643 644```ts 645async function example() { 646 try { 647 let AudioSaveOptions = new picker.AudioSaveOptions(); 648 AudioSaveOptions.newFileNames = ['AudioViewPicker02.mp3']; 649 let audioPicker = new picker.AudioViewPicker(); 650 audioPicker.save(AudioSaveOptions, (err, AudioSaveResult) => { 651 if (err) { 652 console.error('AudioViewPicker.save failed with err: ' + err); 653 return; 654 } 655 console.info('AudioViewPicker.save successfully, AudioSaveResult uri: ' + JSON.stringify(AudioSaveResult)); 656 }); 657 } catch (err) { 658 console.error('AudioViewPicker failed with err: ' + err); 659 } 660} 661``` 662 663### save 664 665save(callback: AsyncCallback<Array<string>>) : void 666 667通过保存模式拉起audioPicker界面(目前拉起的是documentPicker,audioPicker在规划中),用户可以保存一个或多个音频文件。接口采用callback异步返回形式,返回保存音频文件的uri数组。 668 669**系统能力**:SystemCapability.FileManagement.UserFileService 670 671**参数:** 672 673| 参数名 | 类型 | 必填 | 说明 | 674| ------- | ------- | ---- | -------------------------- | 675| callback | AsyncCallback<Array<string>> | 是 | callback 返回audioPicker保存音频文件后的结果集 | 676 677**示例:** 678 679```ts 680async function example() { 681 try { 682 let audioPicker = new picker.AudioViewPicker(); 683 audioPicker.save((err, AudioSaveResult) => { 684 if (err) { 685 console.error('AudioViewPicker.save failed with err: ' + err); 686 return; 687 } 688 console.info('AudioViewPicker.save successfully, AudioSaveResult uri: ' + JSON.stringify(AudioSaveResult)); 689 }); 690 } catch (err) { 691 console.error('AudioViewPicker failed with err: ' + err); 692 } 693} 694``` 695 696## PhotoViewMIMETypes 697 698枚举,可选择的媒体文件类型。 699 700**系统能力:** 以下各项对应的系统能力均为 SystemCapability.FileManagement.UserFileService 701 702| 名称 | 值 | 说明 | 703| ----- | ---- | ---- | 704| IMAGE_TYPE | 'image/*' | 图片类型 | 705| VIDEO_TYPE | 'video/*' | 视频类型 | 706| IMAGE_VIDEO_TYPE | '\*/*' | 图片和视频类型 | 707 708## PhotoSelectOptions 709 710图库选择选项。 711 712**系统能力:** 以下各项对应的系统能力均为 SystemCapability.FileManagement.UserFileService 713 714| 名称 | 类型 | 必填 | 说明 | 715| ----------------------- | ------------------- | ---- | -------------------------------- | 716| MIMEType? | [PhotoViewMIMETypes](#photoviewmimetypes) | 否 | 可选择的媒体文件类型 | 717| maxSelectNumber? | number | 否 | 选择媒体文件数量的最大值(默认值为50,最大值为500) | 718 719## PhotoSelectResult 720 721返回图库选择后的结果集。 722 723**系统能力:** 以下各项对应的系统能力均为 SystemCapability.FileManagement.UserFileService 724 725| 名称 | 类型 | 可读 | 可写 | 说明 | 726| ----------------------- | ------------------- | ---- | ---- | ------------------------------ | 727| photoUris | Array<string> | 是 | 是 | 返回图库选择后的媒体文件的uri数组 | 728| isOriginalPhoto | boolean | 是 | 是 | 返回图库选择后的媒体文件是否为原图 | 729 730## PhotoSaveOptions 731 732图片或视频的保存选项。 733 734**系统能力:** 以下各项对应的系统能力均为 SystemCapability.FileManagement.UserFileService 735 736| 名称 | 类型 | 必填 | 说明 | 737| ----------------------- | ------------------- | ---- | ---------------------------- | 738| newFileNames? | Array<string> | 否 | 拉起photoPicker进行保存图片或视频资源的文件名 | 739 740## DocumentSelectOptions 741 742文档选择选项,目前不支持参数配置。 743 744**系统能力:** SystemCapability.FileManagement.UserFileService 745 746## DocumentSaveOptions 747 748文档保存选项。 749 750**系统能力:** 以下各项对应的系统能力均为 SystemCapability.FileManagement.UserFileService 751 752| 名称 | 类型 | 必填 | 说明 | 753| ----------------------- | ------------------- | ---- | ---------------------------- | 754| newFileNames? | Array<string> | 否 | 拉起documentPicker进行保存的文件名 | 755 756## AudioSelectOptions 757 758音频选择选项,目前不支持参数配置。 759 760**系统能力:** SystemCapability.FileManagement.UserFileService 761 762## AudioSaveOptions 763 764音频的保存选项。 765 766**系统能力:** 以下各项对应的系统能力均为 SystemCapability.FileManagement.UserFileService 767 768| 名称 | 类型 | 必填 | 说明 | 769| ----------------------- | ------------------- | ---- | ---------------------------- | 770| newFileNames? | Array<string> | 否 | 拉起audioPicker进行保存音频资源的文件名 | 771