NativeScript:如何在外部存储(SD卡)中保存文件
在NativeScript中写入Android外部公共存储
我太懂你的需求了——就是不想被局限在应用自己的私有存储里,要直接往系统的公共外部存储写文件对吧?官方文档大多盯着应用上下文内的存储方案,难怪你查了一大堆资料、试了不少“脱离上下文”的代码都没找到精准的路子。
不过你找到的这个方法完全可行!直接调用Android原生API就能拿到公共存储的目录路径:
android.os.Environment.getExternalStoragePublicDirectory(android.os.Environment.DIRECTORY_DOWNLOADS).toString();
这段代码会返回系统公共的Downloads文件夹路径,这个目录是所有应用都能访问的(前提是你已经在应用里申请了对应的存储权限),完美契合你要写入外部存储而非应用私有空间的需求。
这里再补个小提醒:如果你的应用需要适配Android 10(API 29)及以上版本,虽然getExternalStoragePublicDirectory被标记为废弃,但依然可以正常使用,不过要记得在AndroidManifest.xml里添加WRITE_EXTERNAL_STORAGE权限,并且在运行时动态请求权限哦。
内容的提问来源于stack exchange,提问作者Caius
相关产品推荐
相关产品推荐

