0
我正在尝试扫描文件系统的mp3文件。我做了一个AsyncTask
扫描目录,如果找到一个子文件夹,它会再次为该子文件夹调用doInBackground()等等。但是,这似乎会使应用程序崩溃。有什么办法递归地调用doInBackground()
?如何调用doInBackground()递归地
@Override
protected List<File> doInBackground(String... params) {
if (isCancelled()) return foundFiles_;
publishProgress(String.valueOf(foundFiles_.size()));
File file = new File(params[0]);
String [] files = file.list();
for(String fileName : files)
{
File foundFile = new File(fileName);
if(foundFile.isDirectory())
{
doInBackground(fileName);
}
else
foundFiles_.add(foundFile);
}
return foundFiles_;
}
doInBackground()只是一个在另一个线程中运行的方法,所以你应该能够递归地调用他。请发布一些代码来帮助你。 – Daniel
我粘贴的代码:) –
你得到什么错误?,请张贴logcat跟踪 – Daniel