2016-04-22 17 views
-1

Jedes Mal, wenn ich einige HTTPRequest Beispiele aus dem Internet versuchen, werden sie nicht funktionieren. Also mischte ich es zusammen, und machte das: ` Paket com.devwild.httpowerkgodverdomme;HTTP-Anfrage funktioniert nicht

import android.support.v7.app.AppCompatActivity; 
import android.os.Bundle; 
import android.view.View; 

import java.io.ByteArrayOutputStream; 
import java.io.IOException; 
import java.io.InputStream; 
import java.net.URL; 
import java.net.URLConnection; 

public class MainActivity extends AppCompatActivity { 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstanceState); 
setContentView(R.layout.activity_main); 
} 
public static void getdata(View view) { 
try { 
URL url = new URL("http://devwild.nl/zermelo/calll.php?school=carmelhengelo&koppelcode=742138265794"); 
URLConnection con = url.openConnection(); 
InputStream in = con.getInputStream(); 
String encoding = con.getContentEncoding(); 
encoding = encoding == null ? "UTF-8" : encoding; 
ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
byte[] buf = new byte[8192]; 
int len = 0; 
while ((len = in.read(buf)) != -1) { 
baos.write(buf, 0, len); 
} 
String body = new String(baos.toByteArray(), encoding); 
System.out.println(body); 
}catch(IOException e) { 
e.printStackTrace(); 
} 
} 
}` 

Es funktioniert im Klar JAVA (javac und Compilierung) in Ordnung, aber wenn ich es in Android-Studio setzte es funktioniert einfach nicht mir diesen Fehler gibt:

LOG

Wie kann Ich befestige es?

Anmerkung: ja, habe ich im Internet eine Menge von Beispielen versuchen (~ 50)

Antwort

0

Sie NetworkOnMainThreadException bekommen. Korrigieren Sie es, indem Sie einfach Ihre netzwerkbezogenen Anrufe entweder in eine neue Thread oder in die AsyncTask setzen.

Sie können herausfinden, wie es in dem Link, den ich zur Verfügung gestellt habe, oder einfach googlen.

+1

diese schließlich behoben haben! Danke, das ist der Code, den ich benutze: http://pastebin.com/dQ7JAqnF –

Verwandte Themen