HarmonyOS fileAccess使用

有一个需求场景是下载网络文件到本地,并且保存到手机公共文件夹中,HarmonyOS 中就是保存到‘文件管理的内部存储/Download’中,我申请了READ_WRITE_DOWNLOAD_DIRECTORY权限,看文档uri需要通过fileAccess使用,但是fileAccess中似乎没有api

HarmonyOS
2024-09-02 09:59:06
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

目前api12中暂时没有更新@ohos.file.fileAccess (公共文件访问与管理), 推荐使用文档中的三种文档类uri获取方式获取。

目前推荐使用弹出手动进行选择uri的方式

推荐使用fs进行开发,不再依赖fileaccess,应用无法调用系统接口

参考链接:

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-file-fs-V5#ZH-CN_TOPIC_0000001847210116__fsaccess-1

将沙箱文件保存到系统下载目录可以参考以下链接:

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-file-picker-V5?catalogVersion=V5

//获取选择文件的沙箱路径 
async function example():Promise<string|undefined> { 
  try { 
    let PhotoSelectOptions = new picker.PhotoSelectOptions();//图片选项 
    let DocumentSelectOptions = new picker.DocumentSelectOptions();//文件选项 
    // PhotoSelectOptions.MIMEType = picker.PhotoViewMIMETypes.IMAGE_TYPE; 
    // PhotoSelectOptions.maxSelectNumber = 5; 
    let photoPicker = new picker.PhotoViewPicker();//图片 
    let DocumentViewPicker = new picker.DocumentViewPicker();//文件 
    let docs = await photoPicker.select(PhotoSelectOptions); 
    console.info('PhotoViewPicker.select successfully, PhotoSelectResult uri: ’ + JSON.stringify(docs)); 
    fs.openSync(docs.photoUris[0],fs.OpenMode.READ_ONLY);//只能只读打开 
    console.info(‘PhotoViewPicker openSync success’); 
    return docs.photoUris[0]; 
  } catch (err) { 
    console.error('PhotoViewPicker failed with err: ’ + err); 
    return “null” 
  } 
}
分享
微博
QQ
微信
回复
2024-09-02 17:43:05
相关问题
HarmonyOS setInterval()使用
395浏览 • 1回复 待解决
HarmonyOS ObjectLink使用
423浏览 • 1回复 待解决
HarmonyOS eventHub使用
392浏览 • 1回复 待解决
HarmonyOS HMRouter使用
516浏览 • 0回复 待解决
HarmonyOS 使用Text里套Span标签使用问题
734浏览 • 1回复 待解决
HarmonyOS多线程使用
427浏览 • 0回复 待解决
HarmonyOS textpicker使用问题
473浏览 • 1回复 待解决
HarmonyOS navigation的使用
270浏览 • 1回复 待解决
HarmonyOS蓝牙使用详情
675浏览 • 1回复 待解决
HarmonyOS RichEditor使用问题
261浏览 • 1回复 待解决
HarmonyOS Slider使用问题
417浏览 • 1回复 待解决
HarmonyOS mpchart图表使用
303浏览 • 1回复 待解决
HarmonyOS ProtoBuffer使用问题
728浏览 • 1回复 待解决
HarmonyOS Imageknife使用问题
417浏览 • 1回复 待解决
HarmonyOS @BuilderParam使用问题
220浏览 • 1回复 待解决
HarmonyOS bindPopup的使用
399浏览 • 1回复 待解决
HarmonyOS Scroll使用问题
306浏览 • 1回复 待解决
HarmonyOS customdialog使用问题
1119浏览 • 1回复 待解决
HarmonyOS iconfont使用demo
425浏览 • 1回复 待解决
HarmonyOS filePreview使用问题
709浏览 • 1回复 待解决
HarmonyOS jsbridge使用问题
338浏览 • 1回复 待解决
HarmonyOS socketio使用demo
413浏览 • 1回复 待解决
HarmonyOS NodeContainer使用方式
403浏览 • 1回复 待解决
提问
该提问已有0人参与 ,帮助了0人