Android ждет завершения AsyncTask

У меня есть функция 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;
...

Внутри AppHelper.isOnline()я выполняю AsyncTask, которая входит в систему, тем самым выполняя сетевой запрос, который не может быть запущен в пользовательском интерфейсе, потому что в противном случае я получаю исключение. Мне нужно дождаться его завершения, прежде чем возобновить работу с кодом внутри if. Как я могу это сделать ?

Проблема заключается в том, что сначала запускается действие, затем выполняется AsyncTask, поэтому, когда действие ожидает действительный сеанс входа в систему, оно прерывается.

38
задан Ravindra babu 26 September 2017 в 11:46
поделиться