169 похожих чатов

Все доброго здравия. Возник один вопрос, на который не могу

найти ответа.

В Android background service остается активен только в случаях:

It has a visible activity, whether the activity is started or paused.
It has a foreground service.
Another foreground app is connected to the app, either by binding to one of its services or by making use of one of its content providers. For example, the app is in the foreground if another app binds to its:

Отсюда вопрос, есть ли какие-то вообще преимущества в использовании (я так понимаю, с точки зрения живучести) Background Service перед обычным ассинхронным скриптом, запущенным из Application класса, если Foreground Service не активен и никаких других приложений не подключено?

4 ответов

21 просмотр

С живучестью всего что не foreground Все Очень Плохо

Kostya-M Автор вопроса

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

Как утверждают сами гуглы в доке, вся фишка сервисов в том, что они могут жить даже если пользователь переключается на другое приложение. Если такой функционал не нужен, то не следует их городить. К тому же сам сервис запускается на главном потоке, то есть для I/O операций внутри него ещё придётся какие-нибудь асинхронные операции наваливать.

Kostya-M Автор вопроса

Спасибо, учту твое мнение.

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта