android - 无法创建文件夹和文件

标签 android android-manifest android-permissions

我正在尝试在设备的内部存储中创建文件夹,但遇到了一些问题。我无法使用 :

创建目录
   String rootPath=Environment.getExternalStorageDirectory().getPath()+"/test";
    File file=new File(rootPath);
     if(!file.exists()){
         file.mkdir();
    }

file.mkdir 返回 false

我有这样的权限:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_INTERNAL_STORAGE" />

非常感谢您的回答!

最佳答案

真的,正如你们所有人在 Android Marshmallow (API 23) 或更高版本中所说的那样,我们需要请求运行时权限。

要解决此问题,请调用:

ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1);

在您的onCreate() 方法中

感谢大家的帮助!

关于android - 无法创建文件夹和文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46888869/

相关文章:

android - 即使在删除权限后也需要更新位置权限声明 - 应用内容 - 拒绝 Google Play 控制台

android - 从android模拟器调试https

java - webView帮助-错误页面INTERNET WebView

java - 日历提供程序 : Permission Denial on Android 8

android - 限制应用程序仅安装在特定的 imei android 设备上

安卓降级问题

android - BroadcastReceiver 需要 android.permission.RECEIVE_BOOT_COMPLETED

android - 如何在 opengl es 3+ 中获取屏幕外帧缓冲区内底层对象的像素颜色?

android - 如果我使用 MediaPlayer 的 setWakeMode 方法,它会自动释放吗?如果是,什么时候?

android - 如何使用 Retrofit 2 处理空响应体?