Intereting Posts

Исключение или переопределение манифеста AAR

Я добавляю библиотеку в свой проект. Он поставляется в виде AAR . Но у него есть BroadcastReceiver который слушает BOOT_COMPLETED запускает службу. Я не хочу этого поведения в своем приложении. Я бы хотел, чтобы он начинался с момента запуска приложения. (Эта часть уже выполнена через AAR , я предполагаю, в случае, если пользовательская сила остановила приложение).

Есть ли способ изменить их манифест; Или указать в Gradle не сливать свой манифест (в котором я должен был бы заявить о своей деятельности в своем собственном манифестах, я думаю); Или переопределить их манифест и иметь android:enabled="false для BroadcastReceiver "?

Я также хотел бы сделать это в манифесте или Gradle , потому что если я сделаю это программно, и если они установят приложение, но никогда его не откроют, служба библиотеки начнет автоматически в следующий раз, когда пользователь перезагрузит свой телефон.

Вы можете повторно объявить свой BroadcastReceiver в своем манифесте и использовать android:enabled="false" за которым следуют tools:node = "replace" .

Кроме того, если вы позже захотите включить его, вы можете использовать метод setComponentEnabledSetting() внутри PackageManager .