[HarmonyOS Next示例代码] 鸿蒙功能开发 - 选择并查看文档与媒体文件

鸿蒙功能开发 - 选择并查看文档与媒体文件 源码下载地址 

介绍

应用使用@ohos.file.picker、@ohos.file.fs等接口,实现了picker拉起文档编辑保存、拉起系统相册图片查看、拉起视频并播放的功能。

效果预览

首页查看并编辑文档界面查看图片界面查看视频界面

使用说明:

  1. 在首页,应用显示查看最近打开文件功能的跳转按钮,点击后进入文件管理页面,可以通过最近页面,查看最近打开的文件。通过点击右上方的三个按钮,可以分别实现新建文档、选择图片或视频并打开预览、选择文档并打开的功能。
  2. 在查看文档界面,点击右上方左一按钮,可以实现当前文档另存为的功能;点击右上方中间的按钮,开启文档的编辑功能,textArea变成可编辑状态,用户输入数据后点击右上方第三个按钮,可以将当前文档内容进行保存操作(系统文档没有保存权限)。
  3. 在查看图片界面,picker拉起系统相册的图片,用户至多可选择三张图片查看,点击图片可以切换所显示的图片名及大小信息。
  4. 在查看视频界面,picker拉起系统相册的视频,用户至多可选择三个视频查看,点击视频播放并且可以显示的视频名及大小信息。

工程目录

├──entry/src/main/ets/
│  ├──common
│  │  ├──Common.ts
│  │  ├──Constants.ets                  // 常量
│  │  ├──Logger.ts                      // 日志工具
│  │  └──Utils.ts						
│  ├──entryability
│  │  └──EntryAbility.ets               // ability类
│  ├──media
│  │  └──MediaFileUri.ets               // 媒体文件相关函数
│  ├──pages
│  │  ├──EditFile.ets                   // 查看并编辑文档界面
│  │  ├──Index.ets                      // 首页
│  │  └──ViewMedia.ets                  // 查看图片和视频界面
│  └──utils
│     └──utils.ts
└──entry/src/main/resources             // 应用静态资源目录

具体实现

  • 拉起picker选择文件、拉起picker保存文件、拉起picker选择图片或视频的功能封装在Index.ets,源码参考:Index.ets

    • 使用new picker.DocumentViewPicker来创建文件picker实例,使用documentPicker.select来拉起picker选择文件,使用documentPicker.save来拉起picker保存文件,接口参考:@ohos.file.picker
    • 使用new picker.PhotoViewPicker来创建图库picker实例,使用photoPicker.select来拉起picker选择图片或视频,接口参考:@ohos.file.picker
  • 编辑文件并保存的功能封装在EditFile.ets,源码参考:EditFile.ets

    • 使用fs.openSync、fs.writeSync、fs.readSync、fs.closeSync分别用来打开文件、写文件、读文件、关闭文件,接口参考:@ohos.file.fs
  • 拉起图片或视频并查看的功能封装在ViewMedia.ets,源码参考:ViewMedia.ets

相关权限

权限名权限说明级别
ohos.permission.MEDIA_LOCATION允许应用访问用户媒体文件中的地理位置信息normal
ohos.permission.READ_MEDIA允许应用读取用户外部存储中的媒体文件信息normal
ohos.permission.WRITE_MEDIA允许应用读写用户外部存储中的媒体文件信息normal

依赖

不涉及

  • 23
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值