2014-04-28 74 views
0

我正在嘗試執行像本教程Android Wi-Fi Tutorial這樣的操作來掃描可用的接入點。每當掃描過程完成時調用接收器,我在接收器中有一行代碼輸出消息「調用接收器」。我只用一個方法調用startScan方法,但我可以看到接收器被稱爲更多次,而頻率是不正確的。日誌消息是這樣的:Android - 調用WifiManager的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 

所以日誌消息告訴我,接收器被調用與abitrary頻率。任何人都可以告訴我每次調用startScan方法時會發生什麼?它是否會啓動一個新的線程來執行掃描並重復該掃描?如果是這樣,我該如何阻止該線程,以及如何改變該線程的頻率?

+0

您可以查看Android源代碼,但我認爲它不會對您有所幫助。這不是API文檔,所以它不是你需要知道的。在不同版本的Android之間也可能有所不同,所以最好不要嘗試在此基礎上編寫代碼。 – Karakuri

+0

因此,如果我不依賴於此,如何掃描可用的接入點?我需要能夠定期連續掃描接入點。 – congtrungvnit

+0

您無法控制該代碼。即使你知道它做了什麼,那對你有什麼幫助?您唯一能做的就是實施您自己的時間管理,或者根據您在設備上遇到的情況改變您的產品要求。 – Karakuri

回答

0

只要接收者發現新的wifi,總是會調用此接收器,這就是爲什麼您的logcat打印調用接收器的方法。

+0

我可以看到有一次,前次通話和當前通話之間的訪問權限沒有什麼不同。每次出現信號強度等變化時,是否也會調用它? – congtrungvnit

+0

請通過本教程http://www.tutorialspoint.com/android/android_wi_fi.htm並讓我知道更多的幫助。 –

相關問題