2017-11-18 71 views
0

我試圖用我的遠程數據庫使用PHP文件和JSONObject進行連接,但代碼正在滑動Response.Listener,我不知道爲什麼... 這裏我主要包含Response.Listener:使用響應和JSON的Android Studio數據庫連接

Response.Listener<String> responseListener = new Response.Listener<String>() { 
       @Override 
       public void onResponse(String response) { 
        try { 

         Toast.makeText(Register.this, "Test00", Toast.LENGTH_SHORT).show(); 

         JSONObject jsonObject = new JSONObject(response); 
         boolean success = jsonObject.getBoolean("success"); 

         if(success) 
         { 
          Toast.makeText(Register.this, "Test01", Toast.LENGTH_SHORT).show(); 
         } 
         else 
         { 
          Toast.makeText(Register.this, "Error", Toast.LENGTH_SHORT).show(); 
         } 

        } catch (JSONException e) { 
         e.printStackTrace(); 
        } 
       } 
      }; 

      RegisterRequest registerRequest = new RegisterRequest(email, username, usernick, password, birthdate, gender, responseListener); 
      RequestQueue queue = Volley.newRequestQueue(Register.this); 
      queue.add(registerRequest); 

,在這裏我RegisterRequest類:

public class RegisterRequest extends StringRequest { 

private static final String REGISTER_REQUEST_URL = "kameo.com.br/control/ayzac_control_signin_mobile.php"; 
private Map<String, String> params; 

public RegisterRequest(String email, String name, String nickname, String password, String date, String gender, Response.Listener<String> listener) 
{ 
    super(Method.POST, REGISTER_REQUEST_URL, listener, null); 
    params = new HashMap<>(); 
    params.put("userEmail", email); 
    params.put("userName", name); 
    params.put("userNickname", nickname); 
    params.put("userPassword", password); 
    params.put("userBirth", date); 
    params.put("userGender", gender); 
} 

@Override 
public Map<String, String> getParams() { 
    return params; 
} 
} 
+0

你有沒有試着用你的API網址前加上HTTP或HTTPS – Dilip

+0

檢查您的請求params –

+0

它的工作,只需在URL之前「http://」...非常感謝! –

回答

0

我測試您的網址,這裏面就有一個錯誤:kameo.com.br/control/ayzac_control_signin_mobile .php

你也需要從服務器響應讀取錯誤,嘗試創建一個錯誤監聽:

Response.Listener<String> errorListener = new Response.ErrorListener() { 
      @Override 
      public void onErrorResponse(VolleyError error) { 
       Log.e(TAG, "Error : " + error.getMessage()); 
      } 
     }; 

並進入你的RegisterRequest構造

+0

您在Log中使用的標籤具有私密訪問權限... –

+0

用任何字符串bro替換TAG – diegoveloper