0
Arduino BLEからAndroid Appにgpsの位置データを小さなチャンク(20バイト未満)で送信しています。私はアンドロイドアプリでデータを取得していますが、どうすれば小さなチャンクを文字列に結合できますか? これは、Androidアプリケーションに位置情報を送信するarduinoプログラムのコードです。Arduino BLEからAndroidにデータを送信する方法、受信したUARTデータをAndroid Appにまとめる方法
String msg = "lat:";
msg += GPS.latitude;
msg += ",";
msg.toCharArray(sendBuffer, 20);
ble.print("AT+BLEUARTTX=");
ble.println(sendBuffer);
String msg1 = "lon:";
msg1 += GPS.longitude;
msg1 += ",";
msg1.toCharArray(sendBuffer, 20);
ble.print("AT+BLEUARTTX=");
ble.println(sendBuffer);
String msg2 = "speed:";
msg2 += GPS.speed;
msg2.toCharArray(sendBuffer, 20);
ble.print("AT+BLEUARTTX=");
ble.println(sendBuffer);
そして、私のAndroidアプリで、これはUARTデータ
if (action.equals(UartService.ACTION_DATA_AVAILABLE)) {
final byte[] txValue = intent.getByteArrayExtra(UartService.EXTRA_DATA);
try {
String receivedData = new String(txValue, "UTF-8");
Log.i(TAG, "receivedData:" + receivedData);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
}
を取得するためのコードである私は、データを取得していますどのように、私のログを参照してください。
I/ContentValues: receivedData:lat:28.907892,lon:45
I/ContentValues: receivedData:.789005,speed:0.02
受信データから緯度、経度、速度を取得するにはどうすればよいですか。何か助けてくれてありがとう!
@Suren、ありがとうございました。 – proCoder