android - 无法在棉花糖版本的外部存储中创建文件夹

标签 android

当我尝试在 marshmallow 中运行此代码时,未创建文件夹。 代码是,我尝试运行相同的代码,它工作正常,除了棉花糖

File folder = new File(Environment.getExternalStorageDirectory() + "/abcdefg");
    boolean success = false;
    if (!folder.exists()) {
        success = folder.mkdir();
    }
    if (!success) {
        Log.d("", "Folder not created.");
    } else {
        Log.d("", "Folder created!");
    }

最佳答案

尝试在您的 Activity 中添加以下代码以请求运行时权限。 您需要获得 READ_EXTERNAL_STORAGE 权限才能在外部存储中创建文件夹(目录)。

if (ActivityCompat.checkSelfPermission(YourActivity.this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {
            requestPermissions(new String[]{ Manifest.permission.WRITE_EXTERNAL_STORAGE},
                    REQUEST_FOR_STORAGE);//REQUEST_FOR_STORAGE=1111
        } else {
//Do your stuff here
            }
...

@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) {

if(requestCode == REQUEST_FOR_STORAGE){
  //Do your stuff here
  }
 }

希望对你有帮助。

关于android - 无法在棉花糖版本的外部存储中创建文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35933774/

相关文章:

android - SendGrid for android“依赖被忽略发布,因为它可能与Android提供的内部版本冲突

android - 我怎样才能让 Mockito 在 androidTest 中工作

java - Android 应用程序在使用 okhttp 发送 http post 时崩溃

android - Android Studio 项目文件的本地历史存储在文件系统中的什么位置?

android - 在 WebView 中缓存渐进式 Web 应用程序

android - 缓存网页以供离线使用(android)

android - Android WorkManager 何时停止 Worker?

android - 用于音频的 MediaExtractor,得到意外的音频

android - 手势生成器

android - 每个页面都要写webservice的url吗