умолчанию Service не создается в отдельном процессе • Service значительно повышает шансы приложения в борьбе за выживание • Сам по себе Service очень простой механизм
public void onCreate() { // создание сервиса } @Override public int onStartCommand(Intent intent, int flags, int startId) { // Сервис запущен вызовом startService() return mStartMode; } @Override public IBinder onBind(Intent intent) { // Клиент связался с сервисом через bindService() return mBinder; } @Override public boolean onUnbind(Intent intent) { // Все клиенты разорвали связь с сервисом через unbindService() return mAllowRebind; } @Override public void onDestroy() { // Сервис более не используется и будет уничтожен } }
остановка сервиса. Обычно без обратной связи • Bounded Service - неявный запуск и остановка сервиса. Обычно клиент-серверная модель • Возможен смешанный сценарий