您可以使用 Github 中的 Sensor Server app,它将实时传感器数据流式传输到 WebSocket 客户端。
要从 Android 接收实时传感器数据,您只需使用以下 URL 连接到应用程序
ws://ip:port/sensor/connect?type=<sensor-type>
其中<sensor-type> 是您要连接的传感器类型。例如
对于加速度计:/sensor/connect?type=android.sensor.accelerometer
定向:/sensor/connect?type=android.sensor.orientation
陀螺仪:/sensor/connect?type=android.sensor.gyroscope
等等……
几乎每种语言都提供了 Websocket 协议的实现。要在 Python 脚本中接收实时数据,您可以使用 WebSocket client for Python
import websocket
def on_message(ws, message):
print(message) # sensor data here in JSON format
def on_error(ws, error):
print("### error ###")
print(error)
def on_close(ws, close_code, reason):
print("### closed ###")
print("close code : ", close_code)
print("reason : ", reason )
def on_open(ws):
print("connection opened")
if __name__ == "__main__":
ws = websocket.WebSocketApp("ws://192.168.0.102:8082/sensor/connect?type=android.sensor.accelerometer",
on_open=on_open,
on_message=on_message,
on_error=on_error,
on_close=on_close)
ws.run_forever()
Sensor Server app和Websocket客户端必须连接到同一个网络