mkdir不起作用。在日志中,我收到以下消息:
12-23 15:51:18.290 21326-21326/com.example.joche.joche.mywarranty e/file:失败readdirectory()errno = 2
12-23 15:51:21.050 21326-21326/com.example.joche.joche.mywarranty w/system.err:mkdir失败:erofs(fon-forly file system):/testom.example.joche.joche.joche.mywarranty e/e/e/e/e/e/e/e/文件:失败readDirectory()errno = 2
我尝试进行故障排除,并在我的AndroidManifest文件中具有以下权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
这是我的代码:
if (ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED || ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED || ContextCompat.checkSelfPermission(this, Manifest.permission.READ_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED)
{
ActivityCompat.requestPermissions(this, new String[] { Manifest.permission.CAMERA, Manifest.permission.WRITE_EXTERNAL_STORAGE, Manifest.permission.READ_EXTERNAL_STORAGE }, 100);
}
File newFile = new File("/test");
if (!newFile.exists() || !newFile.isDirectory())
{
newFile.mkdir();
}
还要求运行时的权限:
我该如何解决?我可能没有正确的权限吗?
对于Android 6 ,您需要添加代码才能要求用户确认所请求的权限。
Google用于运行时opermissions。
File newFile = new File("/test");
永远不会成功的。尝试外部存储:
File newFile = newFile(Environment.getExternalStorageDirectory(), "test");