【HarmonyOS NEXT】示例代码-Native侧实现文件访问
先容应用在Native侧进行文件访问主要有三种场景,第一种是访问应用沙箱文件,第二种是访问应用资源文件,最后一种是访问公共目录文件,本sample将针对这三种场景给出实现方案。
结果预览
应用主界面 https://img-blog.csdnimg.cn/img_convert/8bc282375e5c8a796ed49b36c51f628f.png
使用分析
点击进入页面后,页面有六个按钮,分别对应不同的文件访问方案。
[*] 点击前三个按钮会出现弹窗显示访问的文件内容;
[*] 点击第四个按钮拉起picker,创建文件;
[*] 点击第五个按钮会拉起picker选择文件,返回对文件操作的结果;
[*] 点击第六个按钮会拉起picker选择文件,返回文件的内容。
工程目录
解释├──entry/src/main/cpp // Native层
│├──types // Native层暴露上来的接口
││└──libfile_access // 暴露给UI层的接口
│├──CMakeLists.txt // 编译入口
│└──FileAccessMethods.cpp // Native文件操作方法
├──ets // UI层
│├──common // 公共模块
││└──utils // 共用的工具类
││ ├──FileOperate.ets // 调用picker文件操作方法
││ ├──Logger.ets // 日志类
││ └──ReadFile.ets // ArkTS侧读取文件方法
│├──entryability // 应用的入口
││└──EntryAbility.ets
│├──entrybackupability
││└──EntryBackupAbility.ets
│├──model
││└──FileNameModel.ets
│└──pages // EntryAbility 包含的页面
│ └──Index.ets // 应用主页面
├──resources // 用于存放应用所用到的资源文件
│├──base // 该目录下的资源文件会被赋予唯一的ID
││├──element // 用于存放字体和颜色
││├──media // 用于存放图片
││└──profile // 应用入口首页
│├──en_US // 设备语言是美式英文时,优先匹配此目录下资源
│├──rawfile // 应用资源文件
│└──zh_CN // 设备语言是简体中文时,优先匹配此目录下资源
└──module.json5 // 模块配置信息 详细实现
[*] 访问沙箱文件主要通过传递路径和拼接路径两种方式,主要调用napi接口传递参数,利用C尺度接口访问文件;
[*] 访问应用资源文件通过传递resource manager,在Native侧通过资源对象访问文件;
[*] 访问公共目录文件通过picker传递的fd,调用C尺度接口访问。
相关权限
[*] 不涉及
依赖
[*] 不涉及
更多详情参考:示例代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]