Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android-调用WifiManager的startScan方法后会发生什么_Android_Wifimanager_Access Point_Network Scan - Fatal编程技术网

Android-调用WifiManager的startScan方法后会发生什么

Android-调用WifiManager的startScan方法后会发生什么,android,wifimanager,access-point,network-scan,Android,Wifimanager,Access Point,Network Scan,我试图做一些类似于本教程的事情来扫描可用的访问点。我在接收器中有一行代码,用于在扫描过程完成时每次调用接收器时输出消息调用接收器。我只调用了startScan方法一次,但是我可以看到接收器被调用了更多次,并且频率是任意的。日志消息如下所示: 04-28 15:49:39.190 calling receiver 04-28 15:50:50.945 calling receiver 04-28 15:50:56.480 calling receiver 04-28 15:55:4

我试图做一些类似于本教程的事情来扫描可用的访问点。我在接收器中有一行代码,用于在扫描过程完成时每次调用接收器时输出消息调用接收器。我只调用了startScan方法一次,但是我可以看到接收器被调用了更多次,并且频率是任意的。日志消息如下所示:

04-28 15:49:39.190   calling receiver

04-28 15:50:50.945   calling receiver

04-28 15:50:56.480  calling receiver

04-28 15:55:41.480  calling receiver

04-28 16:00:26.840  calling receiver

04-28 16:05:12.000  calling receiver

04-28 16:09:57.115 calling receiver

因此,日志消息告诉我,使用随机频率调用接收器。有人能告诉我每次调用startScan方法都会发生什么吗?是否启动一个新线程来执行扫描并重复该扫描?如果是这样,我如何停止该线程以及如何更改该线程的频率?

每当receiver发现新的wifi时,总会调用此接收器,这就是为什么您的logcat打印调用receiver方法的原因

你可以浏览Android的源代码,但我认为这对你没有帮助。这不是API文档中的内容,因此也不是您需要知道的内容。不同版本的Android也可能不同,所以最好不要尝试基于此编写代码。那么,如果我不依赖于此,我如何扫描可用的访问点呢?我需要能够以固定的间隔连续扫描访问点。您无法控制该代码。即使你知道它做了什么,那对你有什么帮助?您唯一能做的就是实施您自己的定时管理,或者根据您对该设备的体验更改您的产品要求。我可以看到,有时前一次通话和当前通话之间的接入电话没有什么不同。它是否也被称为每次有一些变化,如信号强度?请通过本教程,让我知道更多的帮助。