Re[3]: Андроид активити
От: lpd Черногория  
Дата: 29.10.15 15:32
Оценка:
Здравствуйте, Mishka, Вы писали:

M>Здравствуйте, lpd, Вы писали:


lpd>>Насчет onStop и прочих, в документации андроид есть Activity lifecycle — он все объясняет.

lpd>>Для работы с сетью лучше использовать отдельный сервис, обменивающийся с основным активити сообщениями. В ряде случаев Android может прибить основной активити(для экономии памяти, например) а потом перезапустить, при этом сервис может остаться выполняться в бэкграунде. Т.е. если сеть нужна не один раз, а в течение работы приложения, однозначно нужно делать через сервис.

M>А вот эти сервисы — это вообще не в тему. Во-первых, они живут на главном потоке, так что если нужно идти на сервер — всё равно придётся использовать что-то вроде AsyncTask. Далее, система в своей великой мудрости может сервис этот прибить, тот же AsyncTask скорее всего более живуч. И вообще, назначение сервиса — это чтоб другие проги могли его запускать.


В Android как раз сервис в отдельном потоке выполняется. Кроме того, сервису можно поставить флаг, при котором система его убьет только в _самом_ крайнем случае. AsyncTask же она убьет вместе с активити.
Про сервисы говорю точно, т.к. использовал это в своем проекте.
см. http://developer.android.com/reference/android/app/Service.html#startForeground(int, android.app.Notification)
У сложных вещей обычно есть и хорошие, и плохие аспекты.
Берегите Родину, мать вашу. (ДДТ)
Отредактировано 29.10.2015 15:39 lpd . Предыдущая версия . Еще …
Отредактировано 29.10.2015 15:38 lpd . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.