gpt4 book ai didi

android - 尽管有权限,但 mkdir() 使用 SD 卡失败

转载 作者:搜寻专家 更新时间:2023-11-01 09:42:21 26 4
gpt4 key购买 nike

我尝试在sdcard中创建一个文件夹

File folder = new File(Environment.getExternalStorageDirectory().getPath() + File.separator + "folder");
Log.d(TAG, "FOLDER :" +folder);
folder.mkdir();

mkdir 总是返回 false。我添加了对 list 文件的权限

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

我可以使用 adb 工具创建文件夹。

手机是 Nexus 5 Android 6.0.1

代码有什么问题?

最佳答案

android 6.0+ 中,您必须在运行时请求权限,因此在 onCreate() 中请求 WRITE_EXTERNAL_STORAGE

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

并添加此方法(可选):

@Override
public void onRequestPermissionsResult(int requestCode,
String permissions[], int[] grantResults) {
switch (requestCode) {
case 1: {
if (grantResults.length > 0
&& grantResults[0] == PackageManager.PERMISSION_GRANTED) {
// permission was granted!
} else {

// permission denied!
Toast.makeText(MainActivity.this, "Permission denied to write External storage", Toast.LENGTH_SHORT).show();
}
return;
}
}
}

关于android - 尽管有权限,但 mkdir() 使用 SD 卡失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39397885/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com