Если вы используете механизм загрузки Intent для своего tabhost, тогда вы должны быть уверены, что задача не будет убита случайным образом больше, чем сам TabHost (только приостановлено), и вы можете безопасно изменять представления в нем.(по крайней мере, настолько безопасно, насколько это возможно из TabHost).
Но будьте осторожны: любое действие может быть прервано в любое время (например, если пользователь нажимает на ссылку на вкладке, которая открывает новое действие во времяВаша задача все еще выполняется), включая сам Tabhost, который может привести к ужасным сбоям, когда задача возвращается и пытается обновить пользовательский интерфейс ныне мертвой Активности.Поэтому обязательно отмените AsyncTasks при уничтожении, попросите asynctasks проверить, активна ли ваша активность, прежде чем возвращать результаты (см. WeakAsyncTask в дереве исходного кода Android), или используйте независимое от Activity (полу) постоянное решение для фоновых потоков, напримерCaseyB предлагает ( cwac-bus - хорошее готовое решение в этом духе).
В качестве альтернативы вы могли бы просто сделать так, чтобы код обновления пользовательского интерфейса AsyncTask перехватывал все исключения (я видел несколько приложений, которые делают это) и молча терпел неудачу, но это пахнет странно для меня. * В последнее время *Я использовал модифицированную версию WeakAsyncTask в большинстве мест, которая проверяет, что действие не завершено при возвращении лично.