现在推荐的监控WiFi网络连接和断开连接的方法是什么?
通常,我会在我的清单中注册BroadcastReceiver
并听取状态变化。
Android O将使这变得不可能:
应用无法使用其舱单注册大多数隐式广播(即不是专门针对应用的广播)。
完成同样任务的下一个最佳(耗电量最少)方法是什么?
我的初步评估是创建一个监控网络状态变化的Service
。我不喜欢仅为此目的运行永久服务的想法。
答案 0 :(得分:2)
选项1:您可以在BroadcastReceiver
的{{1}}中注册Activity
Java代码,并在onStart()
中取消注册。当然,这只适用于你的onStop()
还活着的时候。
选项2:使用JobScheduler
。您可以根据Activity
网络连接可用性中的可用条件安排作业。
我最初的评估是创建一个监控网络的服务 国家变化。我不喜欢运行永久服务的想法 仅为此目的。
即使这不是那么简单。如果系统发现它空闲,您的JobScheduler
将被终止。如果您不希望Service
被杀,则必须启动Service
,但问题是需要向用户显示通知。
答案 1 :(得分:0)
请检查此库 https://github.com/Ahmed-Abdelmeged/Networkito 使用rxjava和Android架构组件以及正常使用