Android 如何在下面的代码中检查AsyncTask的状态?
我尝试了以下代码,但不起作用。它与进度条卡住了 代码将等到Android 如何在下面的代码中检查AsyncTask的状态?,android,android-asynctask,Android,Android Asynctask,我尝试了以下代码,但不起作用。它与进度条卡住了 代码将等到AsyncTask完成后再转到下一行。使用get() 代码将等到AsyncTask完成后再转到下一行。为什么需要这样做?Async任务有onPostExecute()方法,您应该检查数据是否为空,并执行其他工作以更新UI。此外,您还可以通过AsyncTask更新进度。请查看哪个有示例。在传递到下一个数据之前,我想下载一些数据,因此是否有方法进行检查。我想在启动屏幕中显示异步任务的状态等待异步任务完成如果您等待下载数据,那么我如何知道异步任
AsyncTask
完成后再转到下一行。使用get()
代码将等到
AsyncTask
完成后再转到下一行。为什么需要这样做?Async任务有onPostExecute()方法,您应该检查数据是否为空,并执行其他工作以更新UI。此外,您还可以通过AsyncTask更新进度。请查看哪个有示例。在传递到下一个数据之前,我想下载一些数据,因此是否有方法进行检查。我想在启动屏幕中显示异步任务的状态等待异步任务完成如果您等待下载数据,那么我如何知道异步任务已完成从splash Screen开始,为什么需要这样做?Async任务有onPostExecute()方法,您应该检查数据是否为空,并执行其他工作以更新UI。此外,您还可以通过AsyncTask更新进度。请查看哪个有示例。在传递到下一个数据之前,我想下载一些数据,因此是否有方法进行检查。我想在启动屏幕中显示异步任务的状态等待异步任务完成如果您等待下载数据,那么我如何知道异步任务已完成从闪屏
public class SplashScreen extends AppCompatActivity {
ProgressBarHandler progressBarHandler;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash_screen);
progressBarHandler = new ProgressBarHandler(this);
startTheDownload();
}
public void startTheDownload() {
progressBarHandler.show();
SaveDataOffline saveDataOffline = new SaveDataOffline(getApplicationContext());
saveDataOffline.execute();
AsyncTaskStopWords asyncTaskStopWords = new AsyncTaskStopWords(getBaseContext());
asyncTaskStopWords.execute();
if (saveDataOffline.getStatus() == AsyncTask.Status.FINISHED && asyncTaskStopWords.getStatus() == AsyncTask.Status.FINISHED) {
progressBarHandler.hide();
finish();
Log.i("qwer", "finished");
Intent intent = new Intent(SplashScreen.this, MainActivity.class);
this.startActivity(intent);
}
}
}
SaveDataOffline saveDataOffline = new SaveDataOffline(getApplicationContext());
saveDataOffline.execute().get();
AsyncTaskStopWords asyncTaskStopWords = new AsyncTaskStopWords(getBaseContext());
asyncTaskStopWords.execute().get();