在三星T230(Android 4.4.2)上,它适用于以下两种情况
File firstFile = new File("mnt/extSdCard/Android/data/com.example.storagetest", "test.txt");
RandomAccessFile fileLittle = new RandomAccessFile(firstFile, "rw");
File scndFile = new File("mnt/extSdCard/Android/data/com.example.storagetest", "test2.txt");
scndFile.createNewFile();
我已经试过很多这样的设备。T230是一个示例
在Hometech平板电脑(Android 5.1.1)上无法运行。
File firstFile = new File("mnt/external_sd/Android/data/com.example.storagetest", "test.txt");
RandomAccessFile fileLittle = new RandomAccessFile(firstFile, "rw");
File scndFile = new File("mnt/external_sd/Android/data/com.example.storagetest", "test2.txt");
scndFile.createNewFile();
我得到一个错误如下:
打开失败:EACCES(权限被拒绝)
当前AndroidManifest。xml
<application>
...
</application>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
我尝试了很多不同的方法。。。requestPermissions()和android:maxSdkVersion并没有改变太多的搜索,但我无法得出结论。
如何在SD卡上创建文件。
重要提示:我可以直接读取文件,但不能更改或创建新文件。
如何在SD卡上创建文件。
不允许。Android 4.4附带的设备不允许对可移动存储进行任意访问。
您可以通过存储访问框架间接使用可移动存储。在这里,您不必担心用户将数据放在哪里(外部存储、可移动存储、Google Drive、Dropbox等)。
更新 结果发现我调用open和close FileOutputStream的频率太高了,这会在某个时候抛出FileNotFoundException。听起来更像是线程问题。
问题内容: 我已经加入包括。 当我尝试在Nexus5(Android 6.0)中运行我的应用程序时,它引发了如下异常: 然后我尝试了另一部Android手机(Android 5.1),一切正常。代码如下: Android 6.0在权限方面有区别吗? 问题答案: 在Android 6(Marshmallow)中,即使用户在安装时接受了你的所有权限,他们仍可以稍后决定从你手中夺走其中一些权限。 快速解
java.io.FileNotFoundException:/Storage/Emulated/0/WhatsApp/Media/WhatsApp Documents/api.txt:open失败:EACCES(拒绝权限)
在其他设备中没有发生这种情况,我测试的设备:、、
以下代码包括从服务器下载文件并将其保存在存储中,当设备有内部存储时,该代码可以正常工作。 但当我尝试使用没有内部存储的设备时,只使用外部存储时,我得到以下异常。 有什么建议吗?原因是什么?顺便提一下,Environment.getExternalStorageDirectory()返回/mnt/sdcard/,file.mkdir()返回false。