Java Android对SD卡的写访问
我正在尝试写入外部辅助存储(sd卡),但看起来我没有权限 根据安卓的说法: 辅助外部存储不能由应用写入,除非在综合权限允许的包特定目录中 所以这是行不通的:Java Android对SD卡的写访问,java,android,android-external-storage,Java,Android,Android External Storage,我正在尝试写入外部辅助存储(sd卡),但看起来我没有权限 根据安卓的说法: 辅助外部存储不能由应用写入,除非在综合权限允许的包特定目录中 所以这是行不通的: try { String sdCard = System.getenv("SECONDARY_STORAGE"); FileWriter writer = new FileWriter(new File(sdCard, "test.txt")); writer.write("a test"); writer.
try {
String sdCard = System.getenv("SECONDARY_STORAGE");
FileWriter writer = new FileWriter(new File(sdCard, "test.txt"));
writer.write("a test");
writer.flush();
writer.close();
} catch (IOException e) {
Log.d(e.toString());
//java.io.FileNotFoundException: /storage/extSdCard/test.txt: open failed: EACCES (Permission denied)
}
我在AndroidManifest.xml
和Environment.getExternalStorageDirectory()
无法工作,因为我正在尝试写入可移动sd卡,而不是手机内存
那么,如果应用程序被禁止写入辅助存储,那么像sd卡这样的应用程序怎么能写入呢
所以这是行不通的:
try {
String sdCard = System.getenv("SECONDARY_STORAGE");
FileWriter writer = new FileWriter(new File(sdCard, "test.txt"));
writer.write("a test");
writer.flush();
writer.close();
} catch (IOException e) {
Log.d(e.toString());
//java.io.FileNotFoundException: /storage/extSdCard/test.txt: open failed: EACCES (Permission denied)
}
除其他原因外,我不知道设备需要有辅助存储
环境变量
我拥有AndroidManifest.xml中的权限
那是为了,不是为了
像File Manager这样的应用程序如何写入sd卡
他们依靠用户通过帮助他们。我相信你无法从KitKat开始或仅在KitKat中实现你想要实现的目标。