1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

Absturz bei Zugriff auf Webressource

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von dave635061, 01.07.2012.

  1. dave635061, 01.07.2012 #1
    dave635061

    dave635061 Threadstarter Neuer Benutzer

    Beiträge:
    11
    Erhaltene Danke:
    0
    Registriert seit:
    29.06.2012
    Moin Moin, hab nun schon viel hinbekommen. Nun happerts an dem Zugriff auf eine Webressource:

    Code:
    package com.original.XXXX;
    
    import java.io.IOException;
    import java.io.InputStreamReader;
    
    import org.apache.http.HttpEntity;
    import org.apache.http.HttpResponse;
    import org.apache.http.client.methods.HttpGet;
    
    import android.app.Activity;
    import android.content.Intent;
    import android.net.http.AndroidHttpClient;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;
    import android.view.View.OnClickListener;
    import android.widget.Button;
    
    public class MainActivity extends Activity implements OnClickListener{
    
         private static final String XXXX_LIST_URL ="http://example.com/JSON.php";
            AndroidHttpClient client=AndroidHttpClient.newInstance("XXXX");
            HttpGet request=new HttpGet(XXXX_LIST_URL);
            String jsonstring;
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            Button b = (Button) findViewById(R.id.button1);
            b.setOnClickListener(this);
            startService(new Intent(this,getGeo.class));
            try {
    //###############################################################
    // in der folgenden Zeile scheint der Fehler zu stecken
    //##############################################################
                HttpResponse response =client.execute(request);  
                HttpEntity entity=response.getEntity();
                InputStreamReader reader = new   InputStreamReader(entity.getContent(),"utf-8");
                int c=reader.read();
                jsonstring+=(char)c;
                while(c !=-1)
                { 
                    jsonstring+=(char)c;
                    c=reader.read();
                }
                Log.d("gasdf",jsonstring);
            } catch (IOException e) {
                // TODO Auto-generated catch block
                jsonstring="fehler";
            }
        }
    
        @Override
        public void onClick(View v) {
            startActivity(new Intent(this,MapsActivity.class));
        }
    
        
    }
    
    Wo könnte hier was falsch sein? Internetbenutzung habe ich im MAnifest erlaubt:
    <uses-permission android:name="android.permission.INTERNET"/>

    und seite ist auch erreichbar!

    Fehlerprotokoll:
    07-01 17:19:57.850: E/AndroidRuntime(10371): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.original.XXXX/com.original.XXXX.MainActivity}: android.os.NetworkOnMainThreadException
     
  2. swordi, 01.07.2012 #2
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    Steht ja da was falsch ist. Networkonmainthread. Das ist dein stichwort

    Gesendet von meinem Galaxy Nexus mit der Android-Hilfe.de App
     
  3. dave635061, 01.07.2012 #3
    dave635061

    dave635061 Threadstarter Neuer Benutzer

    Beiträge:
    11
    Erhaltene Danke:
    0
    Registriert seit:
    29.06.2012
    okok.. falscher Ansatz... habs hinbekommen... danke für den Tipp....
     

Diese Seite empfehlen