Во-первых, не все неявные трансляции запрещены.Существует белый список .
Второй, ACTION_MY_PACKAGE_CHANGED
- это явная трансляция, отправленная только вашему приложению.Цитируя документацию :
Приложения, предназначенные для Android 8.0 или выше, больше не могут регистрировать приемники широковещания для неявных трансляций в своем манифесте.Неявная трансляция - это трансляция, которая не предназначена специально для этого приложения.Например, ACTION_PACKAGE_REPLACED - это неявная широковещательная рассылка, поскольку она отправляется всем зарегистрированным слушателям, давая им знать, что какой-то пакет на устройстве был заменен.Однако ACTION_MY_PACKAGE_REPLACED не является неявной трансляцией, поскольку она отправляется только приложению, пакет которого был заменен, независимо от того, сколько других приложений зарегистрировали прослушиватели для этой трансляции.
Итак, вы должны иметь возможностьзарегистрироваться на ACTION_MY_PACKAGE_REPLACED
и перезапустить там свой сервис.