HarmonyOS 如何获取sdcard和系统相册的完整路径,并申请对应的读写权限

如何在ArkTS中获取sdcard和系统相册的完整路径,并申请对应的读写权限,使得在C++中可以根据路径,使用open函数读写对于目录的文件

1、为方便维护,app需要将必要的日志信息保存到sdcard中,需要获取路径和读写权限;

2、在视频应用中,需要在C++代码中保存截图和录像文件,需要获取sdcard或系统相册路径,及读写权限

HarmonyOS
2024-08-22 19:03:22
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

针对问题一:HarmonyOS目前没有sdcard目录,可以使用应用沙箱目录存储(沙箱目录无需申请权限),参考文档:

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/app-sandbox-directory-0000001774280086#ZH-CN_TOPIC_0000001774280086__%E5%BA%94%E7%94%A8%E6%B2%99%E7%AE%B1%E7%9B%AE%E5%BD%95%E4%B8%8E%E5%BA%94%E7%94%A8%E6%B2%99%E7%AE%B1%E8%B7%AF%E5%BE%84;

针对问题二:保存截图和录像到系统相册,目前只能通过2种方式,C++侧目前没有对应api:

a、使用SaveButton()安全控件向用户申请临时授权,授权通过后可以在5秒内使用photoAccessHelper.createAsset()方法创建系统图库文件,创建完成后可以使用文件管理能力将需要保存的文件写入创建的文件中,写入过程不受时间限制;参考文档:

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/savebutton-0000001820999677

b、在AGC网站上通过ACL的方式跨级别申请ohos.permission.WRITE_IMAGEVIDEO权限,在应用内向用户申请授权,授权通过后可任意使用photoAccessHelper.createAsset()方法创建系统图库文件,使用文件管理能力将需要保存的文件写入创建的文件中。参考文档:

ACL提权:

https://developer.huawei.com/consumer/cn/doc/harmonyos-guides/permissions-in-acl-0000001763952222

相册管理:

https://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-photoaccesshelper-0000001821001585#ZH-CN_TOPIC_0000001821001585__createasset

分享
微博
QQ
微信
回复
2024-08-23 17:34:16
相关问题
HarmonyOS怎么获取系统相册路径
325浏览 • 1回复 待解决
如何申请设备上媒体读写权限
2197浏览 • 1回复 待解决
鸿蒙系统文件读写权限如何设置?
54浏览 • 0回复 待解决
HarmonyOS 相册权限检查、申请问题
892浏览 • 1回复 待解决
HarmonyOS 文件读写权限如何获得?
299浏览 • 1回复 待解决
HarmonyOS 获取系统相册报错
84浏览 • 1回复 待解决
HarmonyOS 系统相册权限访问问题
601浏览 • 1回复 待解决
HarmonyOS文件读写权限问题
355浏览 • 1回复 待解决
如何调用系统拍照获取图片
541浏览 • 1回复 待解决
如何申请组合授权权限
319浏览 • 1回复 待解决
如何获取系统错误码对应详细信息
250浏览 • 1回复 待解决
HarmonyOS相册权限问题
487浏览 • 1回复 待解决
获取网络图片保存到相册
1290浏览 • 1回复 待解决