Я работаю с Android Studio, и моя текущая задача - подключить периферийное устройство с помощью Bluetooth и прочитать данные, отправленные с этого удаленного устройства.Все работает хорошо, но эти данные поступают по частям, и как можно обрабатывать, когда InputStrem заканчивает чтение?
private class ConnectedThread extends Thread {
private BluetoothSocket mSocket;
private InputStream mInStrem;
public ConnectedThread(BluetoothSocket socket) {
mSocket = socket;
InputStream tmpIn = null;
try {
tmpIn = mSocket.getInputStream();
} catch (IOException e) {
Log.e(TAG, e.getMessage().toString());
}
mInStrem = tmpIn;
}
public void run() {
mBuffer = new byte[1024];
int numBytes;
while (true) {
try {
numBytes = mInStrem.read(mBuffer);
String str = new String(mBuffer, 0, numBytes);
} catch (IOException e) {
Log.e(TAG, e.getMessage().toString());
}
}
}
}
CS:
.iv
EP: E2005175880D0242236024C9
OK:
C
.iv
ME: N
o Transponder found
ER:005
Это переданные данные, и как я могу получить только 'E2005175880D0242236024C9' эту строку?