ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 안드로이드 스튜디오와 node.js를 연동하여 아이디 중복확인 설정하기
    플젝기록/한이음 프로젝트 2021. 8. 19. 18:13

     

    <아이디 중복확인>

    중복확인은 회원탈퇴와 마찬가지로 입력한 아이디를 json형식으로 서버에 보내 데이터베이스와 비교한다.

    마찬가지로 retrofit 패키지에 데이터타입을 정의해 주었음.

    아이디가 중복되지 않는다면 id_validate = true값으로 바꿔줌

    //아이디 중복 체크
            overlap.setOnClickListener(new View.OnClickListener() {
    
                @Override
                public void onClick(View view) {
    
                    String check_id = joinID.getText().toString();
    
                    // 아무것도 없으면
                    if (check_id.equals("")) {
                        AlertDialog.Builder builder = new AlertDialog.Builder(JoinActivity.this);
                        dialog = builder.setMessage("아이디를 입력하세요.").setPositiveButton("확인", null).create();
                        dialog.show();
                        return;
                    }
                    if (id_validate == false) {
                        //데이터베이스의 passwd 비교
    
                        service.Check_ID(new ID_check_Data(check_id)).enqueue(new Callback<ID_check_response>() {
                            @Override
                            public void onResponse(Call<ID_check_response> call, Response<ID_check_response> response) {
                                ID_check_response result = response.body();
                                System.out.println(result.getCode()); // 잘 들어옴
    
                                if (result.getCode() == 200) {
    
                                    AlertDialog.Builder builder = new AlertDialog.Builder(JoinActivity.this);
                                    dialog = builder.setMessage("사용할 수 있는 아이디입니다.").setPositiveButton("확인", null).create();
                                    dialog.show();
                                    id_validate = true; //검증 완료
                                    //check_button.setBackgroundColor(getResources().getColor(R.color.colorGray));
    
                                } else if (result.getCode() == 204) {
                                    AlertDialog.Builder builder = new AlertDialog.Builder(JoinActivity.this);
                                    dialog = builder.setMessage("이미 존재하는 아이디입니다.").setNegativeButton("확인", null).create();
                                    dialog.show();
                                } else { //404
                                    Toast.makeText(JoinActivity.this, result.getMessage(), Toast.LENGTH_SHORT).show();
                                    return;
                                }
                            }
    
                            @Override
                            public void onFailure(Call<ID_check_response> call, Throwable t) {
                                Toast.makeText(JoinActivity.this, "뭔가의 오류...", Toast.LENGTH_SHORT).show();
                                Log.e("뭔가의 오류...", t.getMessage());
                                return;
    
    
                            }
                        });
    
    
                    }
                }
            });

    <개인정보 활용 동의>

    checkbox는 체크를 하면 자동으로 isChecked()가 된다. 내가 따로 true, false 설정해줄 필요가 없음!

     CheckBox agree = (CheckBox) findViewById(R.id.agree) ;
            agree.setOnClickListener(new CheckBox.OnClickListener() {
                @Override
                public void onClick(View v) {
                    // TODO : process the click event.
                }
            }) ;
        }

    join 버튼을 눌렀을 때 아이디 중복체크 , 개인정보동의 활용이 되어 있어야 회원가입이 완료된다.

    join.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    if(id_validate == true && agree.isChecked()){
                        attemptJoin();
                    }else if(id_validate == false && agree.isChecked()){
                        Toast.makeText(JoinActivity.this, "아이디를 다시 확인해주세요.", Toast.LENGTH_SHORT).show();
    
                    }else if(id_validate == true && !(agree.isChecked())){
                        Toast.makeText(JoinActivity.this, "개인정보 활용을 동의해주세요.", Toast.LENGTH_SHORT).show();
    
                    }else if(id_validate == false && !(agree.isChecked())){
                        Toast.makeText(JoinActivity.this, "아이디 확인, 개인정보 활용을 동의해주세요.", Toast.LENGTH_SHORT).show();
    
                    }
                }
    
    
            });

    이제 대략적으로 챗봇기능 빼고 다 구현한것 같다.

    방학 두달동안 90%를 완성했어야 했는데... 대략 50% 완성한것 같다.

    파이팅 !!! 할 수 있어~~~~~

Designed by Tistory.