Android SDK v15, работающий на устройстве 2.3.6.
У меня проблема, когда onPostExecute()
все еще вызывается, когда я вызываю cancel()
внутри вызова doInBackground()
.
Вот мой код:
@Override
public String doInBackground(String... params) {
try {
return someMethod();
} catch (Exception e) {
cancel(true);
}
return null;
}
public String someMethod() throws Exception {
...
}
Я заставляю someMethod()
генерировать исключение, чтобы проверить это, и вместо вызова onCancelled я всегда возвращаюсь к onPostExecute()
. Если я проверю isCancelled()
, возвращаемое значение будет истинным, поэтому я знаю, что выполняется cancel(true)
.
Есть идеи?