
我们有一个基于wifi的应用程序,拥有数百万的客户群.应用程序的核心逻辑是在连接时将用户连接到具有自动登录功能的公共开放热点.申请完全取决于这些广播.
<intent-filter> <action androID:name="androID.net.conn.CONNECTIVITY_CHANGE" /> <action androID:name="androID.net.wifi.WIFI_STATE_CHANGED" /> <action androID:name="androID.net.wifi.STATE_CHANGE" /></intent-filter>广播后,应用程序将检查连接的wifi热点并尝试自动登录.
在AndroID O中,应用程序不接收任何上述广播.看看有广播接收器解决方法的后台服务,似乎androID正在停止服务一段时间.
任何建议都很受欢迎.
解决方法:
使用JobScheduler(JobIntentService或Firebase作业调度程序以实现向后兼容性).参考latest video from Android Developers.
使用JobInfo.Builder.setrequiredNetworktype()方法,您可以调度在满足特定网络条件时运行的作业.
引自this thread:
The network type can be one of three values:
JobInfo.NETWORK_TYPE_NONE: No network connectivity required.
JobInfo.NETWORK_TYPE_UNMETERED: An unmetered WiFi or Ethernet connection.
JobInfo.NETWORK_TYPE_ANY: Any network connection (WiFi or cellular).
JobInfo.NETWORK_TYPE_UNMETERED将满足您的需求.
总结以上是内存溢出为你收集整理的CONNECTIVITY_CHANGE广播Android O.全部内容,希望文章能够帮你解决CONNECTIVITY_CHANGE广播Android O.所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)