java - Stop conversion decimal to ascii -
i trying send int arduino android via bluetooth if send lets 56, receive 8 in android side...is there anyway can receive 56 , preferably in string form including characters
arduino code :
int level = 56; serial.write(level);
android code :
public void run() { byte[] buffer = new byte[128]; int bytes; while (true) { try { bytes = connectedinputstream.read(buffer); string strreceived = new string(buffer, 0,bytes); final string msgreceived =/* string.valueof(bytes) + " bytes received: " + */strreceived; runonuithread(new runnable(){ @override public void run() { textstatus.settext(msgreceived); value = msgreceived ; }});
value defined static string class variable
you're converting bytes string , therefore you're getting '8'
(char)56;
. if don't want that, follows.
bytes = connectedinputstream.read(buffer); string tmp = ""; for(int i=0;i<bytes;i++) tmp += byte.tostring(buffer[i]); final string msgreceived = tmp;
edit
if send follows, example.
serial.write(56); serial.write(76);
what receive in msgreceived
5676
if both these bytes read. can change behavior in whichever way want.
Comments
Post a Comment