我有一个函数,AppHelper.isOnline(上下文上下文),我调用在我的应用程序的各个部分,以检查一个会话没有超时,在做出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;
...
在AppHelper.isOnline()中,我正在执行一个异步任务登录,从而产生一个网络请求,不能在UI上运行,否则我得到一个异常。我需要等待它完成之前恢复与if里面的代码。我如何做到这一点?
问题是活动开始第一,然后异步执行,因此当活动期望有效的登录会话时,它断开。