为啥我的外部存储在 Android 7 中不可读写 [重复]
Posted
技术标签:
【中文标题】为啥我的外部存储在 Android 7 中不可读写 [重复]【英文标题】:Why is my external storage not readable and writable in Android 7 [duplicate]为什么我的外部存储在 Android 7 中不可读写 [重复] 【发布时间】:2018-03-19 00:34:56 【问题描述】:我正在尝试在 android 7 中读取和写入外部存储。我正在使用以下代码检查读取和写入状态。
public void checkStorage()
File sd = Environment.getExternalStorageDirectory();
if (sd.canWrite() && sd.canRead())
Toast.makeText(context, "sd can read and write", Toast.LENGTH_LONG).show();
else if (sd.canWrite() && !sd.canRead())
Toast.makeText(context, "sd cannot read but write", Toast.LENGTH_LONG).show();
else if (!sd.canWrite() && sd.canRead())
Toast.makeText(context, "sd can read but not write", Toast.LENGTH_LONG).show();
else if (!sd.canWrite() && !sd.canRead())
Toast.makeText(context, "sd cannot read and write", Toast.LENGTH_LONG).show();
我还提到了清单文件中的两个权限
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
但我仍然认为 sd(外部)存储既不可读也不可写。有没有人遇到过这样的问题?我不知道如何解决这个问题。
【问题讨论】:
因为从6.0开始需要获取它的运行时权限 【参考方案1】:从 android 6.0 开始,您还应该在运行时检查权限以及在清单中使用它们。
为了处理运行时权限,我创建了一个可以帮助您的帮助程序库: https://github.com/nabinbhandari/Android-Permissions
【讨论】:
以上是关于为啥我的外部存储在 Android 7 中不可读写 [重复]的主要内容,如果未能解决你的问题,请参考以下文章
Android数据存储(External Storage,外部存储)