在Android O上收听Wi-Fi(直接)可用性(API>;=26)

在Android O上收听Wi-Fi(直接)可用性(API>;=26),android,broadcastreceiver,wifi,Android,Broadcastreceiver,Wifi,考虑到针对Android O的应用程序不再能够在其清单中为隐式广播注册广播接收器,我一直在想,如果我对检测wifi状态变化感兴趣,我有什么选择 这个建议在这里没有帮助,对于以前注册了隐式广播的应用程序,通过使用作业也可以获得类似的功能 虽然和非常接近,但他们都认为应用程序对连接的网络感兴趣,而Wi-Fi Direct(P2P)并不总是可取的——想象一下,当用户启用Wi-Fi时,会触发一个接收器来检查附近的设备并提供一些操作 在Android O之前,这很容易,人们可以在清单中收听WIFI\u S

考虑到针对Android O的应用程序不再能够在其清单中为隐式广播注册广播接收器,我一直在想,如果我对检测wifi状态变化感兴趣,我有什么选择

这个建议在这里没有帮助,对于以前注册了隐式广播的应用程序,通过使用作业也可以获得类似的功能

虽然和非常接近,但他们都认为应用程序对连接的网络感兴趣,而Wi-Fi Direct(P2P)并不总是可取的——想象一下,当用户启用Wi-Fi时,会触发一个接收器来检查附近的设备并提供一些操作

在Android O之前,这很容易,人们可以在清单中收听
WIFI\u STATE\u CHANGED\u ACTION
WIFI\u P2P\u STATE\u CHANGED\u ACTION
,但新规则使这不可能。我想这个想法是,如果用户对附近的设备感兴趣,应该使用一个应用程序来实现这个目的。我能想到的唯一解决办法是让
JobScheduler
每隔一分钟左右启动一个作业,手动检查wifi状态,但这完全违背了这些规则试图实施的节约电池的理念