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

volley onResponse 내부로 진입하지 않습니다.

–1 추천
@Override
public void onClick(View view) {
    // EditText에 현재 입력되어있는 값을 get(가져온다)해온다.
    String userID = et_id.getText().toString();
    String userPass = et_pass.getText().toString();
    String userName = et_name.getText().toString();
    int userAge = Integer.parseInt(et_age.getText().toString());
   Response.Listener<String> responseListener = new Response.Listener<String>() {
       @Override
       public void onResponse(String response) {
           try {
               JSONObject jsonObject = new JSONObject(response);
               boolean success = jsonObject.getBoolean("success");
               if (success) { // 회원등록에 성공한 경우
                   Toast.makeText(getApplicationContext(),"회원 등록에 성공하였습니다.",Toast.LENGTH_SHORT).show();
                   Intent intent = new Intent(RegisterActivity.this, LoginActivity.class);
                   startActivity(intent);
               } else { // 회원등록에 실패한 경우
                   Toast.makeText(getApplicationContext(),"회원 등록에 실패하였습니다.",Toast.LENGTH_SHORT).show();
                   return;
               }
           } catch (JSONException e) {
               e.printStackTrace();
           }
       }
   };
    // 서버로 Volley를 이용해서 요청을 함.
    RegisterRequest registerRequest = new RegisterRequest(userID,userPass,userName,userAge, responseListener);
    RequestQueue queue = Volley.newRequestQueue(RegisterActivity.this);
    queue.add(registerRequest);

서버와 연동해서 회원가입을 하려고 하는데..

아이디/비번/이름/나이 입력 후 [회원가입] 버튼을 눌러도 아무 반응이 없습니다.

onResponse 내부로 들어가지지도 않는 것 같은데 뭐가 잘 못 된거죠?

 

node_lay (110 포인트) 님이 2021년 3월 30일 질문
전 Volley는 써본 적이 없어서 모르겠는데, Rerofit + Gson을 사용하시면 인터페이스랑 응답받을 클래스만 작성해주면 알아서 모든 처리를 해줍니다.  RxJava나 Kotlin coroutines도 잘 지원해 줍니다. Retrofit은 업계의 암묵적인 표준입니다.
Volley에 ErrorListener를 별도로 설정할 수 있도록 되어 있던데, 혹 보내셨던 요청이 계속 에러로 떨어지는 건 아닌지 체크해 보셨나요?

1개의 답변

0 추천
서버주소가없는거같은데요
show7777 (1,170 포인트) 님이 2021년 4월 20일 답변
...