【问题标题】:When to check if updates are disabled on boot何时检查启动时是否禁用更新
【发布时间】:2012-03-18 14:44:43
【问题描述】:

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

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

我的问题是,我假设我需要在启动时检查某个地方是否检查了后台更新设置。我会在 BroacastReceiver 中还是在服务本身中执行此操作,或者是否有其他方法可以防止后台更新在启动时启动。

谢谢。

【问题讨论】:

    标签: android broadcastreceiver alarmmanager


    【解决方案1】:

    最好的答案是在您不想更新时使用PackageManagersetComponentEnabledSetting() 禁用BOOT_COMPLETED BroadcastReceiver,并在需要更新时启用。这样一来,您的任何代码都不会在不需要时在启动时运行,从而加快用户的启动过程并减少电池消耗。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-28
    • 1970-01-01
    • 2014-05-29
    相关资源
    最近更新 更多