我需要一个与所有版本兼容的应用程序图片的 Android 应用程序目录路径。我已经搜索了很多,但我还没有找到任何与所有设备兼容的东西。现在我们有了这段代码,但它仍然在picturesDir.exists()
withU55
和ZTE
devices 处给出 NullPointerExcepction。
File picturesDir;
String state = Environment.getExternalStorageState();
// Make sure it's available, if there is no SD card, create new directory objects to make
// directory on device.
if (!Environment.MEDIA_MOUNTED.equals(state)) {
picturesDir = new File(Environment.getDataDirectory() + "/data/" + getApplicationContext().getPackageName() + "/Pictures/");
} else if (Environment.getExternalStorageState() != null) {
picturesDir = getExternalFilesDir(Environment.DIRECTORY_PICTURES);
} else{
String externalStoragePath = Environment.getExternalStorageDirectory()
.getAbsolutePath();
picturesDir = new File(externalStoragePath + getApplicationContext().getPackageName() + "/Pictures/");
}
if (!picturesDir.exists()) {
picturesDir.mkdir();
}
我们应该做什么?我不想检查它是否为 null 以避免崩溃。我想要一个可以保存图片的路径。谢谢。