代码之家  ›  专栏  ›  技术社区  ›  coder.john

如何使用JobScheduler替换自定义广播接收器?

  •  2
  • coder.john  · 技术社区  · 6 年前

    我必须监听一个在AndroidManifest.xml中注册的自定义广播接收器,但现在它在Android O中不起作用。我得到了一个建议,使用JobScheduler API来解决这个问题。我看过很多文档和博客,它们只是告诉我如何使用JobScheduler替换在AndroidManifest.xml中注册的系统广播接收器,比如网络状态更改。但是我找不到一种方法来使用JobScheduler来监听一个自定义的广播接收器,有谁能帮我?

    1 回复  |  直到 6 年前
        1
  •  0
  •   CommonsWare    6 年前

    JobScheduler 在这种情况下没有帮助。

    发送广播的应用程序的作者需要将其应用程序更新为:

    • 发送明确的广播,或

    • 为IPC做其他事情(例如,使用绑定服务)

    同时,接收这些广播的唯一选择是使用 registerReceiver() . 这只在您有一个正在运行的进程时才起作用,因此如果您希望在大多数时间接收广播,您将需要一个前台服务。