我正在嘗試執行像本教程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方法時會發生什麼?它是否會啓動一個新的線程來執行掃描並重復該掃描?如果是這樣,我該如何阻止該線程,以及如何改變該線程的頻率?
您可以查看Android源代碼,但我認爲它不會對您有所幫助。這不是API文檔,所以它不是你需要知道的。在不同版本的Android之間也可能有所不同,所以最好不要嘗試在此基礎上編寫代碼。 – Karakuri
因此,如果我不依賴於此,如何掃描可用的接入點?我需要能夠定期連續掃描接入點。 – congtrungvnit
您無法控制該代碼。即使你知道它做了什麼,那對你有什麼幫助?您唯一能做的就是實施您自己的時間管理,或者根據您在設備上遇到的情況改變您的產品要求。 – Karakuri