0
블루투스에서 데이터를 수신하여 파형으로 표시 할 수있는 Android 앱을 만들고 있습니다. 이제 문제는 데이터가 올바른지 아닌지를 확인하기 위해 textview에 데이터를 표시하려고하지만 표시되는 것은 인식 할 수없는 것입니다 (예 : @ & zA ...). 누구든지 8 비트 값으로 데이터를 변환하는 데 도움이 될 수 있습니까? 감사합니다 !블루투스가 데이터를 수신하여 텍스트보기로 표시합니다.
관련 코드는 다음과 같습니다 :
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
if (msg.what==READ) {
String str = (String)msg.obj;
textView1.setText(str);
}
super.handleMessage(msg);
}
};
private class ConnectedThread extends Thread {
private final InputStream mmInStream;
public ConnectedThread(BluetoothSocket socket) {
InputStream tmpIn = null;
try {
tmpIn = socket.getInputStream();
}catch (IOException e) { }
mmInStream = tmpIn;
}
public void run() {
byte[] buffer = new byte[5];
int bytes; // bytes returned from read()
// Keep listening to the InputStream until an exception occurs
while (true) {
try {
// Read from the InputStream
bytes = mmInStream.read(buffer);
// Send the obtained bytes to the UI activity
String str = new String(buffer);
temp = byteToInt(buffer); //Convert byte to int
handler.obtainMessage(READ, bytes, -1, str).sendToTarget();
}catch (Exception e) {
System.out.print("read error");
break;
}
}
}
}
모습을 블루투스 채팅 응용 프로그램/샘플/android-17/BluetoothChat –