我有一个函数,AppHelper.isOnline(Context context)我在我的应用程序的各个部分调用,以检查会话在发出HTTP请求之前没有超时.
public void onClick(View v) {
Intent intent = null;
switch (v.getId()) {
case R.id.buttonPagamenti:
if (AppHelper.isOnline(this))
{
//here AppHelper.isOnline should have finished it's async task
intent = new Intent(this, OrdineCreaActivity.class);
this.startActivityForResult(intent, R.id.buttonPagamenti);
}
break;
...
Run Code Online (Sandbox Code Playgroud)
在里面AppHelper.isOnline(),我正在执行一个AsyncTask登录,从而发出一个网络请求,无法在UI上运行,否则我得到一个例外.在使用if中的代码恢复之前,我需要等待它完成.我怎样才能做到这一点 ?
问题是活动开始第一次,然后AsyncTask执行,所以当活动期望有效的登录会话时,它会中断.