HarmonyOS 安装包读取文件到沙盒

目前项目中要把安装包bundle中的若干个文件保存到沙盒中,文件有大有小,看了官方文件好像只能使用buffer或者流的方法写入到沙盒,例如:

let Uint8Array = resourceManager.getRawFileContentSync(zipDir); 

这种影响内存对项目不好,流的方式写起来太复杂了不是很方便,是否有其他方法?

HarmonyOS
2天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

目前暂无其他更好的方式。需要把文件推到手机应用沙盒,然后通过具体指定的沙盒目录去使用文件,将resource文件夹中的资源复制到沙箱路径中。

getContext(this).resourceManager.getRawFileContent('666.png', (_err, value) => {
  let myBuffer:ArrayBufferLike = value.buffer
  let context = getContext(this);
  //沙箱路径
  let filePath = context.filesDir + "/66.png";
  console.log("testTag-filePath:" + filePath);
  let file = fs.openSync(filePath, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE);
  let writeLen = fs.writeSync(file.fd, myBuffer);
  console.info("testTag-write data to file succeed and size is:" + writeLen);
  fs.closeSync(file);
});

然后就可以直接使用fs接口去操作沙箱路径中的文件了。

分享
微博
QQ
微信
回复
1天前
相关问题
HarmonyOS 拷贝文件
169浏览 • 1回复 待解决
HarmonyOS 调试安装.app安装包失败?
169浏览 • 1回复 待解决
HarmonyOS 安装包安全防护
219浏览 • 1回复 待解决
HarmonyOS 无权限导出文件
25浏览 • 1回复 待解决
HarmonyOS NAPI层怎么读写文件
207浏览 • 1回复 待解决
安装包如何安装到手机上?
7598浏览 • 1回复 待解决
HarmonyOS 安装包签名策略相关问题
147浏览 • 1回复 待解决
HarmonyOS dlopen加载的so文件失败
17浏览 • 1回复 待解决
HarmonyOS新到的设备机器无法安装包
246浏览 • 1回复 待解决
HarmonyOS 加载RN路径资源文件
307浏览 • 1回复 待解决
聊一聊关于安装包的问题
9623浏览 • 2回复 待解决
为什么鸿蒙应用的安装包是.apk?
16253浏览 • 3回复 待解决