Intereting Posts
Проводник DDMS-файлов не может получить доступ к данным \ data (HTC Desire HD) Необязательный метод в интерфейсе Java ViewPager внутри ScrollView – вертикальная прокрутка не работает Как передавать данные между действиями в приложении Android? Удаление левого дополнения на Android EditText Как настроить раскрывающийся список AutoCompleteTextView на Android Сила android close: ClassNotFoundException для класса Activity Как получить высоту клавиатуры, когда активность создана в android Как добавить несколько виджетов в одном приложении? Автоматическое добавление нескольких пользовательских представлений в макет OnActivityResult не срабатывает, если режим запуска активности singleInstance Отладка с Visual Studio 2015 на Android перестает работать Исключенное исключение URL-адресов Java Коснитесь диалогового окна Android, чтобы отклонить его? Android Studio – невозможно запустить приложение на устройстве minSdk (API 23, N)! = Устройство Sdk (API 22)

Продолжать работу службы

Может ли кто-нибудь сказать мне, как поддерживать сервис всегда или перезагружать себя, когда пользователь закрывает его? Я наблюдал, как службы facebook перезапускаются, когда я очищаю память. Я не хочу делать ForegroundServices.

Solutions Collecting From Web of "Продолжать работу службы"

Вы должны создать липкую услугу. Подробнее об этом читайте здесь .

Вы можете сделать это, вернув START_STICKY в onStartCommand.

@Override public int onStartCommand(Intent intent, int flags, int startId) { Log.i("LocalService", "Received start id " + startId + ": " + intent); // We want this service to continue running until it is explicitly // stopped, so return sticky. return START_STICKY; } 

Читайте также о приложении: persistent, которое «Должно ли приложение оставаться в рабочем состоянии в любое время». Это более проблематично – система попытается не убить ваше приложение, которое повлияет на других в системе, вы должны быть осторожны с ним.

Я скопировал это из службы, которую я использовал в приложении, которое я делал раньше.

ЕЕ ВАЖНО НЕ ОБНОВЛЯТЬ ЛЮБОЙ интерфейс. Потому что у вас нет пользовательского интерфейса в сервисах. Это относится и к Тостам.

удачи

 public class nasserservice extends Service { private static long UPDATE_INTERVAL = 1*5*1000; //default private static Timer timer = new Timer(); @Override public IBinder onBind(Intent intent) { // TODO Auto-generated method stub return null; } @Override public void onCreate(){ super.onCreate(); _startService(); } private void _startService() { timer.scheduleAtFixedRate( new TimerTask() { public void run() { doServiceWork(); } }, 1000,UPDATE_INTERVAL); Log.i(getClass().getSimpleName(), "FileScannerService Timer started...."); } private void doServiceWork() { //do something wotever you want //like reading file or getting data from network try { } catch (Exception e) { } } private void _shutdownService() { if (timer != null) timer.cancel(); Log.i(getClass().getSimpleName(), "Timer stopped..."); } @Override public void onDestroy() { super.onDestroy(); _shutdownService(); // if (MAIN_ACTIVITY != null) Log.d(getClass().getSimpleName(), "FileScannerService stopped"); } }