我的应用程序有一个按钮,允许用户安装一些可以下载或通过蓝牙传入的其他资源。如果相关文件在下载目录中,我可以单击此按钮。
String downloadDir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).toString();
Log.d("MyApp","Download directory " + downloadDir);
File incomingFile = new File(downloadDir +"/myfile.zip");
if (incomingFile.exists()) {
// Make button clickable
}
else {
incomingFile = new File(downloadDir +"/bluetooth/myfile.zip");
if (incomingFile.exists()) {
// Make button clickable
}
}
}
所有这些都适用于我的某个测试设备,但是,在较旧的HTC Wildfire手机(Android 2.2,API级别8)Environment.DIRECTORY_DOWNLOADS不正确。
我有点认为Environment.DIRECTORY_DOWNLOADS是获取正确目录的通用方式,我的搜索不会显示其他人有同样的问题。
所以问题是我可以安全地假设这只是特定手机的一个怪癖而且代码基本上是合理的,或者是否有一种更加防弹的方式来获取我不知道的下载目录? / p>