2017-02-14 46 views
0

我發現到一個我要提幾個類似的問題,但我是個太過這一領域的小白給的答案適用於我的特定問題。增加的WiFi RSSI掃描速率爲室內導航

我有大約40000平方英尺的面積。由22個AP的哪個主機6 WiFi信道的一塊覆蓋。我正在使用WiFi RSSI信息來估計用戶在這個40,000平方英尺內的位置。我目前正在與之戰鬥的一個問題是RSSI掃描刷新率...它需要花費將近4秒或更長的時間來刷新RSSI信息。這對我的應用程序來說是不可接受的,因爲用戶可以在這段時間內顯着移動。

我與Android設備工作,並希望能有一個解決方案,這將是通用於所有Android用戶。我能做些什麼來提高掃描速度?

我讀過,它需要4+秒的原因是因爲它真的只是需要那麼久......不過,我的應用程序,我的手機能夠輕鬆地處理此4-第二個窗口之間,其他的事情。例如,按鈕上的點擊計數器可能被濫發,然後隨機全部刷新掃描結果。

下面的代碼是用來獲取RSSI掃描:

Context context = getApplicationContext(); 
    WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE); 
    wifiManager.startScan(); 
    List<ScanResult> scan = wifiManager.getScanResults(); 

謝謝

回答

0

你既可以嘗試在驅動程序級別修改設備,或者install iw並用它來進行更精細的掃描。

然而,掃描小於150毫秒會導致可能跳過信標幀,使你的方法不準確的。此外,大多數消費者的路由器,這些天被配置成檢測在其頻道信標傳輸碰撞和任一回退,或切換到另一個信道

+0

所以,實際地說,每一個AP設備需要150毫秒〜每次掃描。 22個設備(不包括範圍內的所有額外設備)* 150ms = 3300 + ms用於掃描。你能推薦任何文獻,以便更好地理解這個過程嗎? – user2539859