Google Nearby Connection API:测量信号强度

时间:2015-09-25 17:26:51

标签: android google-play-services bluetooth-lowenergy google-nearby

最近,我找到了一种使用JSFIDDLE在设备之间进行通信的看似很酷的方法。浏览文档并没有回答我的问题 - 是否可以实时测量连接信号强度,或者我应该发明一些例如测量发送和接收数据的时间或其他什么?

谢谢。

2 个答案:

答案 0 :(得分:5)

作为线程Google Nearby Messages - Cancel initial link between devices中所述的Nearby API开发人员:

  

今天,Nearby不会直接暴露距离

他建议改用BLE RSII

  

如果其中一个设备能够进行BLE广告,则可以通过测量BLE RSSI获得距离的粗略近似值。这将对设备的保持方式,天线增益和环境因素敏感,但优于随机。

     

但是,没有直接的“卷尺”API。

答案 1 :(得分:1)

如果您的问题确实是关于“Nearby Connection API”而不是“Nearby Messages API”,您只需检查Wifi信号强度:

WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
int numberOfLevels = 5;
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
int level = WifiManager.calculateSignalLevel(wifiInfo.getRssi(), numberOfLevels);