Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MUSIC)是只读的

时间:2015-01-23 07:26:26

标签: android memory readonly internal

我尝试通过以下方式从公共音乐目录中恢复:

Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MUSIC);

在我的Android 4.2设备上,它是/ storage / emulated / 0 /音乐,效果很好。

在android 5.0.1设备上,它是/ storage / sdcard0 / Music和readonly。

为什么呢?我知道4.4只限于写入内部存储器,但它是公共导演,不是吗?

2 个答案:

答案 0 :(得分:0)

我不确定,但在developer.android.com上声明:

<manifest ...>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
...
</manifest>
  

从Android 4.4开始,如果您只是阅读或编写应用专用的文件,则不需要这些权限。

私有位置(对您的应用)可能仍然需要此权限吗?

顺便说一下,尽管有这个声明,我还是必须在Android 5.0.1的应用程序中添加此权限才能正常运行。

答案 1 :(得分:0)

问题是设备sequrity politic阻止通过模拟/ 0 /音乐(模拟文件系统)访问音乐目录到非系统签名的应用程序。可以通过/ data / 0

访问它