2016-07-28 96 views
1

我正在開發一個使用iBeacons的應用程序。它的主要特點是檢測最近的信標(距離無關緊要,我只需要最近的一個),並根據它顯示一些內容。找到最近的燈塔

在IOS上它像一個魅力,沒有任何問題。

在Android上我有奇怪的經歷。我知道,這取決於硬件,藍牙芯片供應商等,但即使我嘗試了很多事情(平均rssi,排隊...),我也無法保持穩定。信標距離彼此約3-5米,在約80平方米的房間內有8個。

我使用Android AltBeacon庫。我無法以穩定的方式檢測到最近的燈塔:有時候距離設備5米遠的一個信標燈距離RSSI「比較近」,而不是靠近設備的信標燈等等。 (信標使用相同的發射功率和廣告間隔,altbeacon掃描週期爲250毫秒)

我應該怎麼做才能使其穩定?什麼,何時以及如何平均rssi?或者我應該這樣做?要麼...?

非常感謝!

回答

1

RSSI值將取決於許多的TX功率旁邊的東西,其中:

  • 多徑反射:2.4GHz的將反映從牆壁,所以如果反射有助於遠處燈塔和衰減靠近的燈塔,那麼遙遠的燈塔可以得到更強的RSSI。
  • 天線的位置:以正確的方式握住手機可以產生很大的不同。

我不能說爲什麼iOS應該比Android更好,但它可能是因爲它們的平均算法運行良好。從我的兩點來看,這並不是一件簡單的事情。

要了解更多有關這些問題,我建議你閱讀部署iBeacon顯示常見問題及答案在Getting Started with iBeacon