可以使用异步任务来解决这个问题。通过在后台线程中进行文件系统扫描,可以避免UI线程的阻塞。示例代码如下:
public class FileScannerTask extends AsyncTask
public FileScannerTask(Context context) {
this.context = context;
}
@Override
protected Void doInBackground(Void... params) {
// 进行文件系统扫描的代码
return null;
}
@Override
protected void onPostExecute(Void result) {
super.onPostExecute(result);
// 扫描完成后的处理代码
}
}
调用代码:
FileScannerTask task = new FileScannerTask(context); task.execute();