Сервис в отдельном глобальном или частном процессе.Какие есть отличия? - PullRequest
1 голос
/ 01 февраля 2012

http://developer.android.com/guide/topics/manifest/service-element.html#proc

В чем различия?

Если имя, присвоенное этому атрибуту, начинается с двоеточия (':'), новый частный для приложения процесс создается тогда, когда это необходимо, и служба запускается в этом процессе. Если имя процесса начинается со строчной буквы, служба будет запускаться в глобальном процессе с таким именем, если у него есть разрешение на это. Это позволяет компонентам в разных приложениях совместно использовать процесс, сокращая использование ресурсов.

Я проверил и могу связываться с Сервисом, независимо от того, является ли он приватным или глобальным, независимо от того, делаю ли я это в том же приложении или во втором. (разные UID)

1 Ответ

0 голосов
/ 03 февраля 2012

Я не уверен, что вы подразумеваете под частным процессом, но обычно служба запускается в процессе по умолчанию вашего приложения или выделенного процесса (установленного android: процесс для компонента службы в вашем манифесте).Клиенты с другим идентификатором пользователя могут связываться с вашей службой или запускать ее, если для службы явно задано значение android: exported = true или если для компонента службы заданы фильтры намерений, а для экспорта не установлено значение false.

http://developer.android.com/guide/topics/manifest/service-element.html#exported

Разрешения, установленные для тега службы, могут дополнительно ограничивать тех, кто может запускать и привязывать к вашему сервису.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...