我们知道,从Android Oreo来说,Google限制了后台服务和广播。许多人说我们可以使用jobScheduler代替服务。但是我找不到任何解决方案来处理后台隐式广播。假设我要在我的应用程序中处理WifiManager.NETWORK_STATE_CHANGED_ACTION。当应用程序为前台时,我可以动态注册此操作。但这是当应用程序在后台时以任何方式收听相同广播的方法。或任何实现这一目标的建议。谢谢!

最佳答案

从android official documentation粘贴行


  面向Android 8.0或更高版本的应用无法再注册
  清单中隐式广播的广播接收器。



应用可以在运行时使用Context.registerReceiver()来注册
广播,无论是隐式还是显式的接收器。


其中指出,如果您正在管理要在后台运行的应用程序,则仍可以在运行时接收隐式广播。

另外,
以下是有关使您的应用在后台运行的一些技巧的链接:

Migrate an app to Android Oreo

10-06 13:19