java - 将文件保存到内部存储(文档文件夹)权限被拒绝
问题描述
我尝试在智能手机上保存文件。由于我没有安装 SD 卡,我必须将数据保存到我的内部存储器中。用户以后必须可以轻松访问数据,因此我想将数据存储在易于访问的位置。以下变体可以正常工作,但不易访问
File root = new File(getApplicationContext().getFilesDir(),"NAME");
if(!root.exists()) root.mkdirs();
在此变体中,我收到拒绝访问的消息。
Environment.DIRECTORY_DOCUMENTS
我还尝试了以下权限:
READ_EXTERNAL_STORAGE WRITE_EXTERNAL_STORAGE
有谁知道如何访问这些文件夹?根目录也足够了。
谢谢!
解决方案
除了在 Android 6+ 的清单中请求读写权限外,您还应该添加代码让用户确认这些权限。
谷歌运行时权限。
今年你在这个问题上是#1258。
推荐阅读
- android - android studio,kotlin中未解决的参考android
- runtime-error - 我收到运行时错误,因为注释了 if 语句如何解决?
- reactjs - NextJs/Material-ui 不尊重 makeStyles CSS
- java - 使用 SHARED PREFERENCES android studio 更改按钮的文本
- azure - 通过 azure app 服务的私有链接连接到 cosmos db
- html - 如何使用部分将背景图片放在另一张图片下方?
- terraform - 寻找一种更简洁的嵌套循环方式
- mongodb - 使用填充时按猫鼬中的嵌套对象属性排序
- node.js - 如何将凭证 json 文件与 GCP bigquery 与 nodejs 集成?
- webrtc - 是否可以作为机器人加入 Microsoft Teams、zoom 或 Google Meet 通话并进行记录