Ich versuche, Client-Server-Kommunikation mit Android und PHP mit diesem Tutorial zu lernen:Client-Server-Kommunikation mit PHP und Android
So war ich erfolgreich die App (genau zu machen der im Tutorial) und das php-script funktioniert auch (ich habe es mit der Chrome-Erweiterung "Advanced Rest Client" getestet).
Aber wenn ich die App starte und auf den Knopf klicke, um die Daten zu senden, verschwindet der Text in der TextView (ich habe ihn auf "Hallo Welt" eingestellt) und nichts passiert mehr. Das TextView bleibt klar.
In der Manifest-Datei enthalten ich die
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
vor der Anwendung-Tag.
Was kann ich jetzt tun?
So geputtet ich die exeptions und bekam:
10-02 11:56:41.816 13275-13275/? V/Helloagain﹕ android.os.NetworkOnMainThreadException
at android.os.StrictMode$AndroidBlockGuardPolicy.onNetwork(StrictMode.java:1133)
at java.net.InetAddress.lookupHostByName(InetAddress.java:410)
at java.net.InetAddress.getAllByNameImpl(InetAddress.java:241)
at java.net.InetAddress.getAllByName(InetAddress.java:219)
at libcore.net.http.HttpConnection.<init>(HttpConnection.java:70)
at libcore.net.http.HttpConnection.<init>(HttpConnection.java:50)
at libcore.net.http.HttpConnection$Address.connect(HttpConnection.java:340)
at libcore.net.http.HttpConnectionPool.get(HttpConnectionPool.java:87)
at libcore.net.http.HttpConnection.connect(HttpConnection.java:128)
at libcore.net.http.HttpEngine.openSocketConnection(HttpEngine.java:316)
at libcore.net.http.HttpEngine.connect(HttpEngine.java:311)
at libcore.net.http.HttpEngine.sendSocketRequest(HttpEngine.java:290)
at libcore.net.http.HttpEngine.sendRequest(HttpEngine.java:240)
at libcore.net.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:81)
at libcore.net.http.HttpURLConnectionImpl.getOutputStream(HttpURLConnectionImpl.java:197)
at .MainActivity.GetText(MainActivity.java:99)
at .onClick(MainActivity.java:54)
at android.view.View.performClick(View.java:4421)
at android.view.View$PerformClick.run(View.java:17904)
at android.os.Handler.handleCallback(Handler.java:730)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5214)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:739)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555)
at dalvik.system.NativeStart.main(Native Method)
10-02 11:56:41.826 13275-13275/? V/Helloagain﹕ java.lang.NullPointerException
at .MainActivity.GetText(MainActivity.java:134)
at .MainActivity$1.onClick(MainActivity.java:54)
at android.view.View.performClick(View.java:4421)
at android.view.View$PerformClick.run(View.java:17904)
at android.os.Handler.handleCallback(Handler.java:730)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5214)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:525)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:739)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:555)
at dalvik.system.NativeStart.main(Native Method)
Sie versuchen, eine Netzwerkverbindung auf Haupt-Thread zu machen. das ist [nicht erlaubt in android] (http://developer.android.com/reference/android/os/NetworkOnMainThreadException.html). Überprüfen Sie [diese] (http://stackoverflow.com/questions/6343166/android-os-networkonmainthreadexception) für weitere Details. –