2017-01-15 6 views
1

Ich mache Anwendung Android Verbindung mit Codeigniter, aber warum ich falsch eingegeben Benutzername und Passwort, Authentifizierung funktioniert nicht. Genau wie es zu MainActivity.class umgangen wurde, sag mir bitte was falsch?Warum Authentifizierung ist Bypass

Dies ist mein Code:

public void onClick(View view){ 
     StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build(); 
     StrictMode.setThreadPolicy(policy); 
     RequestBody formBody = new FormBody.Builder().add("username_kirim", username.getText().toString()) 
       .add("password_kirim", password.getText().toString()) 
       .build(); 
     Request request = new Request.Builder().url(url_login).post(formBody).build(); 
     try { 
      Response response = client.newCall(request).execute(); 
      if(!response.isSuccessful()){ 
       throw new IOException("Gagal Terkoneksi" + response); 
      } 
      if(response.isSuccessful()){ 
       if(checkFlag){ 
        editor.putString("username", username.getText().toString()); 
        editor.putString("password", password.getText().toString()); 
        editor.apply(); 
       } 
       Intent loged = new Intent(LoginActivity.this, MainActivity.class); 
       startActivity(loged); 
      } 

     } 
     catch (IOException e){ 
      e.printStackTrace(); 
     } 
    } 
+0

Setzen Sie die StrictModePolicy nicht. Was Sie tun, ist ein Hack, der auf vielen Geräten nicht funktioniert und das Ihrem Benutzer eine schlechte Erfahrung bereitet. Erfahren Sie, wie Sie eine AsyncTask für das Netzwerk verwenden oder eine Netzwerkbibliothek verwenden. –

+0

Ja, ich werde es ändern, nachdem dieses Problem lösen –

Antwort

1

Nur weil eine Abfrage erfolgreich ist, bedeutet nicht, dass es die Daten enthält, 0 Zeilen können immer noch eine erfolgreich ausgeführt Abfrage sein.

+0

Danke, du der Engel. –