何时检查是否在引导时禁用了更新

时间:2012-03-18 14:44:43

标签: android broadcastreceiver alarmmanager

我的应用使用BroadcastReceiver和服务来执行后台更新。我创建了一个设置,用户可以切换以启用/禁用后台更新,这基本上启动/取消包含我的BroadcastReceiver的Intent的AlarmManager。

我在AndroidManifest中也有一个接收器设置,它使用BOOT_COMPLETED广播操作。我注意到如果我重新启动设备,即使我禁用了后台更新,后台更新也会再次启动。

我的问题是,我假设我需要在启动时检查某处,是否已检查后台更新设置。我会在BroacastReceiver或服务本身中执行此操作,还是有另一种方法可以阻止后台更新在启动时启动。

感谢。

1 个答案:

答案 0 :(得分:1)

最佳答案是,当您不想要更新时,使用PackageManagersetComponentEnabledSetting()来禁用BOOT_COMPLETED BroadcastReceiver,并在您执行此操作时启用。这样,在不需要时,您的代码都不会在启动时运行,从而加快了用户的启动过程并减少了电量。