- Forum-Beiträge: 14
23.10.2012, 10:40:08 via Website
23.10.2012 10:40:08 via Website
Dieses per Post. ich weiß mittlerweile das ich die postmethode per asynctask aufrufen muss damit die app nicht abstürzt oder halt gefreezt wird.
ich habe die MainActivity so aufgebaut :
2
3
4 private EditText Feld1;
5 private EditText Feld2;
6
7
8
9
10 MyTask task = new MyTask<String, Void, Boolean>() {
11 @Override
12 protected void onPostExecute(Boolean... params) {
13 String msg = "";
14 if(params == null || params.length == 0) {
15 msg = "Generic error!";
16 } else if(!params[0]) {
17 msg = this.getOccurredProblem() != null ? this.getOccurredProblem().getErrorMessage() : "Something bad happened!";
18 } else {
19 msg = "Success";
20 }
21
22 Feld2.setText(msg);
23 }
24
25
26
27
28
29 @Override
30 public boolean onCreateOptionsMenu(Menu menu) {
31 getMenuInflater().inflate(R.menu.main, menu);
32 return true;
33 }
34
35 @Override
36 public void onCreate(Bundle savedInstanceState) {
37 super.onCreate(savedInstanceState);
38 setContentView(R.layout.main);
39 String c;
40 Feld1 = (EditText)findViewById(R.id.zahl1);
41 Feld2 = (EditText)findViewById(R.id.zahl2);
42 c = Feld1.getText().toString();
43
44
45 }
46
47
48
49 public void ButtonClick (View v){
50
51
52 String c;
53
54 Feld1 = (EditText)findViewById(R.id.zahl1);
55 c = Feld1.getText().toString();
56
57
58 task.execute(c);
59
60 }
61 ; }
Hier habe ich allerdings ganz zum schluss iwo einen syntax fehler den ich einfach nicht wegbekomme... weiß zufällig einer woran das liegt?
meine 2te klasse die ich gemacht habe heißt MyTask und ist so aufgebaut:
2 private Throwable occurredProblem;
3
4 public Throwable getProblem() {
5 get occurredProblem;
6 }
7
8 @Override
9 protected Boolean doInBackground(String... params) {
10 if(params == null || params.length == 0) {
11 occurredProblem = new IllegalArgumentException("MyTask needs a valid String param!");
12 return false;
13 } else {
14 return postRequest(params[0]);
15 }
16 }
17
18 public boolean postRequest(String c){
19 occurredProblem = null;
20 HttpClient client = new DefaultHttpClient();
21 HttpPost httppost = new HttpPost("meineseitephp");
22 try {
23
24
25 ArrayList<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
26 nameValuePairs.add(new BasicNameValuePair("var", c));
27 httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
28
29 client.execute(httppost);
30
31 } catch (ClientProtocolException e) {
32 occurredProblem = e;
33 } catch (IOException e) {
34 occurredProblem = e;
35 }
36
37 return occurredProblem != null;
38}}
an für sich sollte das doch eigentlih funktionieren ... wo liegt mein fehler?
Liebe grüße Marc
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.