java– 无法在Android上写入外部存储

java– 无法在Android上写入外部存储,第1张

概述我看到其他一些人问同样的问题,但是发布的解决方案都没有帮助我.我正在尝试从我的Android应用程序将(二进制)文件写入外部存储.我把<uses-permissionandroid:name=“android.permission.WRITE_EXTERNAL_STORAGE”/>进入我的清单,但我仍然无法创建任何文件.我用来创建文件的代码

我看到其他一些人问同样的问题,但是发布的解决方案都没有帮助我.

我正在尝试从我的Android应用程序将(二进制)文件写入外部存储.
我把< uses-permission androID:name =“androID.permission.WRITE_EXTERNAL_STORAGE”/>进入我的清单,但我仍然无法创建任何文件.我用来创建文件的代码是

file folder = new file(Environment.getExternalStorageDirectory(), SAVE_DIRECTORY);file toWrite = new file(folder, "save.bin");if(!toWrite.exists()){    try {        if(!folder.mkdirs())            Log.e("Save", "Failed to create directorIEs for save file!");        toWrite.createNewfile();     } catch (IOException e) {         Log.e("Save", "Failed to create save file! " + e.getMessage());     } }

对mkdirs()的调用失败,createNewfile()抛出IOException(ENOENT,因为该目录不存在)

有谁知道怎么了?我甚至试过重启我的设备.我在Nexus 7上使用API​​级别8,如果它有任何区别的话.

解决方法:

首先,您应该检查ExternalStorageState

public static boolean isSDCARDAvailable(){   return Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED);}

如果此方法isSDCARDAvailable返回true,则使用您的代码

添加权限:

< uses-permission androID:name =“androID.permission.MOUNT_UNMOUNT_fileSYstemS”/>

总结

以上是内存溢出为你收集整理的java – 无法在Android上写入外部存储全部内容,希望文章能够帮你解决java – 无法在Android上写入外部存储所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1096405.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存