Должен ли я использовать android: process = ": remote" в моем приемнике?

У меня есть BroadcastReceiver, который называется так часто, и я заметил, что многие люди используют

android: process =":remote" 

В их приемнике. Шахта используется для проверки нескольких вещей, и если условия совпадают, активируйте будильник. Мой вопрос: следует ли использовать строку, которую я опубликовал выше в своем манифесте? И если да, то в чем преимущества этого?

Solutions Collecting From Web of "Должен ли я использовать android: process = ": remote" в моем приемнике?"

Определив ваш приемник с помощью android:process=":remote" вы в основном запускаете приемник в другом процессе (= VM). Для типичных случаев использования вам не нужно запускать это в другом процессе, и все, что вы хотите сделать, возможно, может работать только нормально локально (в вашем APK-процессе).

Недостатком использования android:process=":remote" является то, что вам нужны дополнительные ресурсы для его запуска (в данном случае отдельный процесс). При этом вы в основном имеете дело с двумя виртуальными машинами, и некоторые шаблоны, такие как одиночные игры, статические поля больше не могут использоваться совместно с вашим приложением и вашим удаленным сервисом.

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

Я обнаружил, что большую часть времени, для большинства распространенных случаев использования, вы можете уйти без использования android:process=":remote" .