鸿蒙小助手 2026-02-03 17:03:33 发布本问答帖原创发布在华为开发者联盟社区 ,欢迎开发者前往论坛提问交流。
问题描述:
目前文件存储都是根据context的cacheDir目录存在应用沙箱,怎么存到公共目录,在文件管理可以查看呢?文件管理无法访问其他应用的应用沙箱,现在文件保存了但无法查看。
解决方案:
可以使用FilePicker来实现文件保存到系统文件管理器管理的特定目录。对音频、图片、视频、文档类文件的保存操作类似,均通过调用对应Picker的save()接口并传入对应的saveOptions来实现。通过Picker访问相关文件,无需申请权限。
根据用户文件的常见类型,选择器(FilePicker)分别提供以下选项:
· PhotoViewPicker:适用于图片或视频类型文件的选择与保存(该接口在后续版本不再演进)。请使用安全控件创建媒体资源。
· DocumentViewPicker:适用于文件类型文件的选择与保存。DocumentViewPicker对接的选择资源来自于FilePicker, 负责文件类型的资源管理,文件类型不区分后缀,比如浏览器下载的图片、文档等,都属于文件类型。
· AudioViewPicker:适用于音频类型文件的选择与保存。AudioViewPicker目前对接的选择资源来自于FilePicker。
参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/save-user-file-V5
问题处理思路:可以先通过picker获取到要选择或者保存文件的公共路径,然后通过fs.copyFile进行文件复制,核心示例代码和其他解决方案相关的讨论,请点击原帖查看:
相关推荐
鸿蒙小助手
7468
0
3385
0
程序员小葵
4305
0
老何的技术日记
6776
0
写代码的阿轮
3874
0
鸿蒙小助手
致力于为鸿蒙开发者谋福利
帖子
提问
粉丝
鸿蒙直播全链路开发实践:打造丝滑稳定的直播体验
2026-03-11 15:26:18 发布鸿蒙软件工程实践:手把手教你优化编译配置,提升鸿蒙编译效率
2026-03-04 17:02:11 发布