HTTPClient Exception

J

jakves

Gast
Bekomme immmer die Exception android.os.NetworkOnMainThreadException. Was mache ich falsch?

Code:
Code:
package com.ELQuiz;

import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;


public class EndActivity extends Activity
{

    public void onCreate(Bundle savedInstanceState) 
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.end);
        
        Intent intent = getIntent();
        Bundle daten = intent.getExtras();
        
        int richtig = daten.getInt("Richtig");
        float zeit = daten.getFloat("Zeit");
        String user = daten.getString("User");
        
        float points = 1000 - ((10-richtig)*10) - (zeit/1000);

        
        
        TextView ergebnis = new TextView(this);
        ergebnis = (TextView) findViewById(R.id.ergebnis_textview);
        
        ergebnis.setText(user + " hat beim Elektronik-Quiz " + richtig + " von 10 Fragen in einer Zeit von " + (zeit/1000) + " Sekunden richtig beantwortet und damit " + points + " Punkte erreicht.");
        
        //MySQL
        
        try{
            HttpClient httpclient = new DefaultHttpClient();
            HttpPost httppost = new HttpPost("http://www.example.com/el_quiz/on_db.php");
            httpclient.execute(httppost);
        }

        catch(Exception e)
        {
            ergebnis.setText(e.toString());
        }
        
        //MySQL Ende
        
        Button end = new Button(this);
        end = (Button) findViewById(R.id.Button_Restart);
        end.setOnClickListener(new View.OnClickListener() 
        {
            
            public void onClick(View v) 
            {                
                Intent myIntent = new Intent(v.getContext(),ELQuizActivity.class);
                startActivity(myIntent);    
            }
            
        });
        
        
        
    }
}
Danke schon mal!
 
hmmm

die exception lautet NetworkOnMainThreadException.

das würde ja mal schnell übersetzt bedeuten, dass du netzwerkoperationen im main thread ausführst.

da wir ja alle wissen, dass das sehr böse enden kann, solltest du deine netwerkanfragen vom main thread entfernen und in einen separaten thread packen.

denke damit kannst das problem lösen
 
  • Danke
Reaktionen: jakves
Danke für die Antwort! Klingt logisch. Nur wie geht das? :DD Sry, aber habe nicht soviel Erfahrung damit..

danke!
 
schau dir tutorials zum thema AsyncTask an

das wird dir helfen.

und lies dich in das thema threads ein, das brauchst du ständig
 

Ähnliche Themen

L
  • LHomme
Antworten
1
Aufrufe
1.167
jogimuc
J
T
Antworten
7
Aufrufe
1.058
markus.tullius
markus.tullius
A
Antworten
1
Aufrufe
1.038
swa00
swa00
Zurück
Oben Unten