2017-09-05 8 views
0

Ich möchte eine Verbindung zu wampserver und toasten Sie eine Webseite Inhalt in Android App durch Drücken der Taste (btnget), aber wenn ich auf die Schaltfläche klicken, es Toast nicht.Wo ist das Problem? meine Seite auf dem lokalen Host ist "ss.php"Kann nicht von localhost lesen

dies die Verbindungsklasse ist:

public class Connect extends AsyncTask { 

public String link=""; 

public Connect(String link){ 

    this.link=link; 
    } 
    @Override 
    protected Object doInBackground(Object[] params) { 
    try{ 
     URL url=new URL(link); 
     URLConnection connection=url.openConnection(); 
     BufferedReader reader=new BufferedReader(new 
    InputStreamReader(connection.getInputStream())); 
     StringBuilder builder=new StringBuilder(); 
     String line=null; 
     while((line=reader.readLine())!=null){ 
      builder.append(line); 
     } 
     MainActivity.data=builder.toString(); 
    }catch (Exception e){ 
    } 
    return ""; 

}} 

diese Hauptaktivitätsklasse ist:

public class MainActivity extends AppCompatActivity { 

public static String data=""; 
Button getData; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 

    /*address of the webpage on localhost:http://IP/path */ 

    new Connect("http://192.168.56.1/localhost/shop/ss.php").execute(); 

    getData=(Button)findViewById(R.id.btnGet); 
    getData.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 


      Toast.makeText(MainActivity.this,data, Toast.LENGTH_SHORT).show(); 
     }}); 
}; 

}

+0

Dies hängt davon ab, wie Sie Ihren Apache Server konfiguriert haben. Aber diese "http: // 192.168.56.1/localhost/shop/ss.php" sollte wahrscheinlich "http: // 192.168.56.1/shop/ss.php" – RiggsFolly

+0

Sind Sie sicher, dass '192.168.56.1' ist die IP Adresse des PCs mit Apache und nicht die IP-Adresse des Routers ?? – RiggsFolly

+0

Wie soll ich meine IP-Adresse von einem PC finden, auf dem Apache läuft? – Ayoub

Antwort

0

Wenn ich Wenn Sie den Link zu Ihrer lokal auf einer WAMP-Instanz gehosteten Site nicht verwechseln, sollte dieser wie folgt aussehen: http://LocalHost:8080/shop/ss.php (oder eine andere Portnummer, die Sie in den wamp-Einstellungen konfiguriert haben)

+0

Aber wenn Sie 'localhost' im Telefoncode verwenden, wird angenommen, dass Sie nach einer Website' on the phone' suchen. – RiggsFolly

+0

True. Das habe ich verpasst (dass man es mit WAMP außerhalb der Maschine laufen lässt). Wahrscheinlich ist das Problem, dass Sie den Port nicht spezifizieren. –

+0

OP hat nicht vorgeschlagen, dass sie den Port geändert haben, und wenn sie den Standardport 80 verwenden, ist es nicht erforderlich – RiggsFolly

Verwandte Themen