在我的应用程序中,我使用下面的代码列出Movies
存储文件夹中的电影。但是,由于我将 Nexus 7 平板电脑升级到 Android 4.4,此代码无法正常工作(代码末尾的 toast 弹出意味着代码在该文件夹中没有找到任何文件,即使它可以访问该文件夹,我也不知道)。知道我应该更改什么或在新更新中更改了什么吗?
private void populateSpinners() {
Boolean foundVideoFiles;
// videos spinner
File videoFolder =
Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MOVIES)
.getAbsoluteFile();
if (videoFolder.listFiles() != null) {
foundVideoFiles = true; //found some files
ArrayAdapter<File> movieAdapter = new ArrayAdapter<File>(this,
android.R.layout.simple_spinner_dropdown_item, videoFolder.listFiles());
_spinner_videos.setAdapter(movieAdapter);
//Restore perviously selected video
int spinnerValue = _preferences.getInt("spinner_videos", -1);
if (spinnerValue != -1) {
_spinner_videos.setSelection(spinnerValue);
}
} else {
foundVideoFiles = false;
}
//Error handling
if (foundVideoFiles == false) {
Toast.makeText(this, "ERROR: NO MOVIES WERE FOUND IN" + videoFolder, Toast.LENGTH_LONG).show();
}
}
如果我使用平板电脑上的 Gallery 应用程序,我可以在那里看到电影,因此电影在更新过程中没有被删除。