android - сервиса - разница между service и intentservice



Можете ли вы запустить IntentService в отдельном процессе? (1)

  1. Можно ли запустить IntentService в отдельном процессе? Как? Если да, то обязательно ли к нему привязываться?
  2. Можно ли запустить IntentService в отдельном процессе и запустить его на переднем плане ?
  3. В чем разница между android:isolatedProcess android:process и android:process ? Смотрите: http://developer.android.com/guide/topics/manifest/service-element.html

1) Можно ли запустить IntentService в отдельном процессе? Как? Если да, то обязательно ли к нему привязываться?

Да, вы можете запустить IntentService в отдельном процессе. Просто добавьте android:process=":whatever" в запись манифеста для этого сервиса.

Нет, вам не нужно привязываться к нему. Вы можете связаться с ним, отправив его Intents с помощью startService()

2) Можно ли запустить IntentService в отдельном процессе и запустить его на переднем плане?

Да (см. Выше). Чтобы ваш сервис работал на переднем плане, он может вызывать startForeground() всякий раз, когда он хочет это сделать. Сам сервис контролирует, работает ли он на переднем плане или в фоновом режиме.

3) В чем разница между android:isolatedProcess android:process и android:process android:isolatedProcess ? Смотрите: http://developer.android.com/guide/topics/manifest/service-element.html

android:process позволяет вам контролировать, в каком процессе выполняется каждый конкретный компонент (указав имя процесса). Вы можете сгруппировать компоненты вашего приложения для запуска в отдельных процессах (например, все компоненты пользовательского интерфейса в одном процессе и все службы в другом). Поведение по умолчанию - все компоненты приложения выполняются в одном и том же процессе.

android:isolatedProcess - это флаг (true / false), который вы можете установить, если хотите, чтобы определенный компонент службы запускался в отдельном процессе, изолированном от остальной части вашего приложения. Изолированный процесс не имеет каких-либо разрешений, предоставленных остальной части вашего приложения. Обычно разрешения предоставляются приложению, и все компоненты приложения имеют все разрешения, которые получает приложение. android:isolatedProcess доступен только начиная с уровня API 16 (Jellybean). См. http://aleksmaus.blogspot.de/2012/09/a-feature-of-android-jelly-bean.html и Преимущество введения тега Isolatedprocess в Службы в JellyBean [Android]





android-service