마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

check 버튼을 작동시키면 어플이 강제종료됩니다.

0 추천
자바 관련 질문은 처음이라서 어떻게 질문 해야하는지 잘 모르겠네요.
 
 
ActPopup클래스
public void onClick(View v){
    if(v.getId() == R.id.button3){
        String num = stduentNumber.getText().toString().trim();
        if(num.length() > 8 || num.length() <=7){
            showMessage("학번을 다시 입력해 주세요.");
        }else {
            showMessage("학번 입력이 완료되었습니다.");
            stduentNum = num;
            this.finish();
        }
    }

}
 
MainActivity클래스
if(v.getId() == R.id.check){
    if (mSelectedDeviceAddress != null) {
        ActPopup Num = new ActPopup();

        String txt = Num.stduentNum;
        if (!txt.equals("")) {
            // 메시지의 크기가 20byte 보다 크면 20byte 씩 나눠보낸다.
            int msgLen = txt.length();
            int msgCount = msgLen / 20 + ((msgLen % 20 > 0) ? 1 : 0);
            for (int i = 0 ; i < msgCount ; i++) {
                int stx = i * 20;
                int etx = stx + 20;
                if (i == msgCount - 1) {
                    etx = msgLen;
                }
                String data = txt.substring(stx, etx);

                // 메시지를 전송한다.
                boolean succ = mBluetoothService.sendData(mSelectedDeviceAddress, data.getBytes());

                // 뷰에 메시지의 상태를 표시한다.
                Message msg = new Message();
                msg.setType(Message.MSG_OUT);
                msg.setData(data);
                msg.setStatus((succ) ? Message.STATUS_SUCC : Message.STATUS_FAIL);
                messageUpdateToListView(msg);
                mMessage.setText("");
            }
        }
    } else {
        showMessage("연결된 장치가 없습니다.");
    }
}
fms2014 (210 포인트) 님이 2017년 6월 14일 질문

1개의 답변

0 추천

에러가 나면 콜스택을 확인하실 수 있을 겁니다. 

콜스택을 올려주셔야 디버깅에 도움이 됩니다. 

그리고, 아래 코드는...

if(num.length() > 8 || num.length() <=7){

이렇게 바꿔 보세요.. 

if(num.lenght() != 8) {

}

 

 

 

 

mcsong (44,040 포인트) 님이 2017년 6월 15일 답변
...