Если вы делаете вызов REST, я бы предложил вам использовать IntentService вместо AsyncTask. AsyncTask выглядит красиво и полезно, но требует большой осторожности, чтобы не утекать контекст и возвращать результат в Activity, которая также может быть давно унесена, что делает его не так простым для правильного использования.
Пожалуйста, просмотрите эту презентацию для получения очень полезных рекомендаций:
http://www.youtube.com/watch?v=xHXn3Kg2IQE
EDIT:
Что касается отправки результата назад, вы можете включить в ваше намерение пакет ResultReceiver
, с которым вы запускаете IntentService, и уведомить об этом действие (и обработать обновление адаптера), используя .send ()
Что касается обновления ListAdapter, то это действительно зависит от того, какой тип вы используете. Если это простой адаптер, вы можете поменять его местами с помощью
getListView().setAdapter(adapter)
но вам будет намного лучше с CursorAdapter
и простым вызовом
context.getContentResolver().notifyChange(uri, null);
Где контекст - это контекст вашего IntentService.
Надеюсь, это поможет!