在背景上扫描Wifi列表

时间:2019-05-15 17:12:42

标签: java android

问题

我正在开发一个可以检测当前地点是否为特定地点的应用程序,并且如果我位于特定地点,则可以播放声音。因此,我将使用wifi名称(ssid)来检测该地点。

因此,当应用程序在后台服务上运行时,我想获取ssid列表。另外,它应该始终获得ssid列表,因为当用户到达该位置时它会播放声音。

问题

所以我的问题是,如何始终获取ssid列表并检测背景位置?

2 个答案:

答案 0 :(得分:0)

首先,您应该使用服务来运行扫描任务,由于背景限制,我的建议是前台服务,请参考foreground-services

第二,关于wifi扫描功能,在Android上,我们可以获得设备上可见的Wi-Fi接入点列表,但对扫描频率有一些限制,每个后台应用程序(所有后台应用程序(适用于android 9及更高版本)可以在30分钟内扫描一次,而对于前台应用则可以扫描2分钟。 请参考:wifi-scan-throttling

答案 1 :(得分:0)

您需要一个广播接收器和一个后台服务来实现这一点。您自己尝试一下,我们可以从那里开始。