在Android 11中,对于外部存储器,应用程序不再具有根目录访问权限。相反,它们必须使用特定的API才能访问存储器上特定的目录。
以下是在Android 11上获取外部存储器根目录路径的示例:
String rootDir;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) {
rootDir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOCUMENTS).getAbsolutePath();
} else {
rootDir = Environment.getExternalStorageDirectory().getAbsolutePath();
}
此示例使用Environment.getExternalStoragePublicDirectory()
获取DOCUMENTS目录,因为在Android 11中,应用程序必须使用此方法才能访问外部存储器上的公共目录。在先前的Android版本中,应用程序可以直接访问外部存储器的根目录。
总之,在Android 11中,应用程序不再具有根目录访问权限,必须使用特定的API才能访问目录。可以使用上述示例中的代码获取外部存储器的根目录。