if(readMessage.equals("u")) {
if (readMessage != null) {
}
}
는 이미 readMessage 가 null이면 처음부터 오류가 나니
if("u".equals(readMessage)){
}
이렇게 바꾸는게 나을 것 같습니다.
if ("u".equals(readMessage)) {
int index1 = btcount % 5;
btn1.setVisibility(index1 == 0 ? View.VISIBLE : View.INVISIBLE);
btn2.setVisibility(index1 == 1 ? View.VISIBLE : View.INVISIBLE);
btn3.setVisibility(index1 == 2 ? View.VISIBLE : View.INVISIBLE);
btn4.setVisibility(index1 == 3 ? View.VISIBLE : View.INVISIBLE);
if (index1 == 0) {
mode_text.setText("V_mode01");
}
else if (index1 == 1) {
mode_text.setText("V_mode02");
}
else if (index1 == 2) {
mode_text.setText("V_mode03");
}
else if (index1 == 3) {
mode_text.setText("V_mode04");
}
else if (index1 == 4) {
mode_text.setText(null);
}
btcount++;
}
else if (TextUtils.isEmpty(readMessage)) {
readMessage = str;
}
전체적으로 이렇게 간소화할 수 있을 것 같아요.
btcount 가 의심스러운데, 저 값이 어떻게 변하고 있는지 확인해보세요.