Как исправить ошибку "IndexOutOfBoundException" при чтении нескольких данных датчика с Bluetooth?
Я пытаюсь получить данные от модуля Arduino Bluetooth HC-05, который представляет собой строку, содержащую показания датчика, разделенные знаком "|" разделитель.
Я получил всю строку и отобразил ее в виде текста. Но когда я пытаюсь разделить его и отобразить данные в разных текстовых представлениях, ошибка IndexOutOfBoundException index=1 length=1 приводит к сбою моего приложения после установления соединения между модулем Bluetooth и моим приложением
case STATE_MESSAGE_RECEIVED:
// set text of message text view
byte[] readBuff = (byte[]) msg.obj;
String Msg = new String(readBuff,0,msg.arg1);
String tempMsg=Msg;
String[] values = tempMsg.split("\\|");
data1.setText(values[0]);
data2.setText(values[1]);
data3.setText(values[2]);
data4.setText(values[3]);
data5.setText(values[4]);
data6.setText(values[5]);
data7.setText(values[6]);
data8.setText(values[7]);
data9.setText(values[8]);
break;
Это фрагмент кода от hanler, который я использовал для установки текста в текстовых представлениях из Connectedthread из bluetooth.