Die Anwendung XXX wurde unerwartet beendet. Versuchen Sie es erneut - Leider immer wieder

  • Antworten:9
Thomace
  • Forum-Beiträge: 5

07.11.2011, 22:29:54 via Website

Hallo,

ich habe ein kleines Problem. Android "Programmierung" unter Eclipse.
Bei jedem noch so einfachen Progrämmchen, dass ich teste kommt immer wieder folgende Meldung:
"Die Anwendung XXX wurde unerwartet beendet. Versuchen Sie es erneut"
Das Programm hat problemlos compiliert, aber dann wenn ich das App testen will klappt es nicht. Der Fehler Log ist noch zu kryptisch für
mich. Manchmal konnte ich es durch rumfummeln in der main.xml retten, aber das ist alles andere als systematisch. Ich verstehe
es einfach nicht. Im Log erscheint immer wieder die NullPointerException, hat jemand einen Tipp was ein häufiger Fehler sein kann?

11-07 22:26:41.531: E/AndroidRuntime(11415): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2753)
11-07 22:26:41.531: E/AndroidRuntime(11415): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2769)
11-07 22:26:41.531: E/AndroidRuntime(11415): at android.app.ActivityThread.access$2500(ActivityThread.java:129)
11-07 22:26:41.531: E/AndroidRuntime(11415): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2117)
11-07 22:26:41.531: E/AndroidRuntime(11415): at android.os.Handler.dispatchMessage(Handler.java:99)
11-07 22:26:41.531: E/AndroidRuntime(11415): at android.os.Looper.loop(Looper.java:143)
11-07 22:26:41.531: E/AndroidRuntime(11415): at android.app.ActivityThread.main(ActivityThread.java:4717)
11-07 22:26:41.531: E/AndroidRuntime(11415): at java.lang.reflect.Method.invokeNative(Native Method)
11-07 22:26:41.531: E/AndroidRuntime(11415): at java.lang.reflect.Method.invoke(Method.java:521)
11-07 22:26:41.531: E/AndroidRuntime(11415): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
11-07 22:26:41.531: E/AndroidRuntime(11415): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
11-07 22:26:41.531: E/AndroidRuntime(11415): at dalvik.system.NativeStart.main(Native Method)
11-07 22:26:41.531: E/AndroidRuntime(11415): Caused by: java.lang.NullPointerException
11-07 22:26:41.531: E/AndroidRuntime(11415): at de.Versuche.OrdnerMacher.FilemacherActivity.onCreate(FilemacherActivity.java:32)
11-07 22:26:41.531: E/AndroidRuntime(11415): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
11-07 22:26:41.531: E/AndroidRuntime(11415): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2717)
11-07 22:26:41.531: E/AndroidRuntime(11415): ... 11 more
11-07 22:26:43.499: I/Process(11415): Sending signal. PID: 11415 SIG: 9
11-07 22:26:53.132: D/AndroidRuntime(11480): Shutting down VM
11-07 22:26:53.140: W/dalvikvm(11480): threadid=1: thread exiting with uncaught exception (group=0x400208b0)
11-07 22:26:53.140: E/AndroidRuntime(11480): FATAL EXCEPTION: main
11-07 22:26:53.140: E/AndroidRuntime(11480): java.lang.RuntimeException: Unable to start activity ComponentInfo{de.Versuche.OrdnerMacher/de.Versuche.OrdnerMacher.FilemacherActivity}: java.lang.NullPointerException
11-07 22:26:53.140: E/AndroidRuntime(11480): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2753)
11-07 22:26:53.140: E/AndroidRuntime(11480): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2769)
11-07 22:26:53.140: E/AndroidRuntime(11480): at android.app.ActivityThread.access$2500(ActivityThread.java:129)
11-07 22:26:53.140: E/AndroidRuntime(11480): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2117)
11-07 22:26:53.140: E/AndroidRuntime(11480): at android.os.Handler.dispatchMessage(Handler.java:99)
11-07 22:26:53.140: E/AndroidRuntime(11480): at android.os.Looper.loop(Looper.java:143)
11-07 22:26:53.140: E/AndroidRuntime(11480): at android.app.ActivityThread.main(ActivityThread.java:4717)
11-07 22:26:53.140: E/AndroidRuntime(11480): at java.lang.reflect.Method.invokeNative(Native Method)
11-07 22:26:53.140: E/AndroidRuntime(11480): at java.lang.reflect.Method.invoke(Method.java:521)
11-07 22:26:53.140: E/AndroidRuntime(11480): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
11-07 22:26:53.140: E/AndroidRuntime(11480): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
11-07 22:26:53.140: E/AndroidRuntime(11480): at dalvik.system.NativeStart.main(Native Method)
11-07 22:26:53.140: E/AndroidRuntime(11480): Caused by: java.lang.NullPointerException
11-07 22:26:53.140: E/AndroidRuntime(11480): at de.Versuche.OrdnerMacher.FilemacherActivity.onCreate(FilemacherActivity.java:32)
11-07 22:26:53.140: E/AndroidRuntime(11480): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
11-07 22:26:53.140: E/AndroidRuntime(11480): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2717)
11-07 22:26:53.140: E/AndroidRuntime(11480): ... 11 more

Antworten
Ben Becker
  • Forum-Beiträge: 209

07.11.2011, 22:44:34 via Website

Was steht denn hier in Zeile 32:
de.Versuche.OrdnerMacher.FilemacherActivity.onCreate(FilemacherActivity.java:32)

Antworten
Markus B.
  • Forum-Beiträge: 636

07.11.2011, 23:02:22 via Website

Hallo,
folgende Zeile sagt einfach alles aus:

111-07 22:26:53.140: E/AndroidRuntime(11480): Caused by: java.lang.NullPointerException
211-07 22:26:53.140: E/AndroidRuntime(11480): at de.Versuche.OrdnerMacher.FilemacherActivity.onCreate(FilemacherActivity.java:32)

Jetzt muss du nur noch schauen was in der Zeile "null" werden kann und dich fragen warum das so ist :) Bzw. diesen Fall verhindern.

Gruß,
Markus

Antworten
Thomace
  • Forum-Beiträge: 5

08.11.2011, 20:44:16 via Website

Danke erstmal für das Feedback, ich glaube wir pirschen uns langsam an das Problem, aber es liegt noch nicht auf der Hand - für mich zumindest.
in der Zeile steht folgendes:

setContentView(R.layout.main);

Also muss ich den Fehler in der main.XML suchen?
Die sieht so so aus:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_horizontal"
android:orientation="vertical" >

<TextView
android:id="@+id/anzeigenfeld"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/hello" />

<Button
android:id="@+id/makedir_button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/makedir_button" />

<EditText
android:id="@+id/name_field"
android:layout_width="match_parent"
android:layout_height="wrap_content" >

</EditText>

</LinearLayout>

Grüsse und danke nochmals für weitere Tipps die mich der Sache näher bringen!

Antworten
Maximilian O
  • Forum-Beiträge: 990

08.11.2011, 21:13:23 via App

Habe deinen Code nicht getestet, kenne aber das Problem, dass es eine nullpointer beim Setcoktentview gibt... obwohl kein Fehler vorhanden ist.
Versuche mal folgendes:
Project->clean
in der Main.xml einfach ein Leerzeichen machen und speichern.
Dann nochmal neu starten.
Mfg

Vergiss nie wieder Geburtstage, oder viel schlimmer, deinen Hochzeitstag - Birthdays Download

Antworten
Thomace
  • Forum-Beiträge: 5

08.11.2011, 21:21:11 via Website

Danke es geht weiter, habe das mit dem Project Clean versucht, hat leider auch nicht geklappt,
hier mein Java-Code. Konnte ihn bisher nicht testen..... deswegen weiss ich nicht ob er funktioniert,
aber dieser Fehler mit der NullPointer exception ist unendlich nervig....

package de.Versuche.OrdnerMacher;

import java.io.File;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class FilemacherActivity extends Activity implements OnClickListener {
/** Called when the activity is first created. */




public Button MakeDirButton;
public File f;
public String DirName;
EditText nameField;
TextView anzeige;
public int counter;

public void onCreate(Bundle savedInstanceState) {

DirName = null;
f = null;
nameField = (EditText) findViewById(R.id.editText1);
anzeige = (TextView) findViewById(R.id.anzeigenfeld);
MakeDirButton = (Button) findViewById(R.id.makedir_button);
MakeDirButton.setOnClickListener(this);
anzeige.setText("Noch gar nicht gedrückt");

super.onCreate(savedInstanceState);
setContentView(R.layout.main);


}


public void onClick(View v) {



if (v == MakeDirButton ){
DirName = nameField.getText().toString();
f = new File("/sdcard/"+DirName);}

if (!f.exists() || !f.isDirectory()) {
f.mkdirs();
anzeige.setText("Folgendes Verzeichnis wurde erstellt "+ f.getName() + "!");
}



}
}

Antworten
Markus Gu
  • Forum-Beiträge: 2.644

08.11.2011, 21:39:52 via App

schieb setcontentview mal nach oben. das muss vorher aufgerufen werden

swordiApps Blog - Website

Antworten
Thomace
  • Forum-Beiträge: 5

08.11.2011, 21:53:34 via Website

Danke das ist genau der Fehler, jetzt funktioniert es super! Das ist es!
Cool jetzt frag ich mich nur noch warum das Programm nicht den Ordner erstellt :-)

Antworten
Markus Gu
  • Forum-Beiträge: 2.644

08.11.2011, 22:52:52 via Website

weil du die berechtigung write_sdcard nicht gesetzt hast

swordiApps Blog - Website

Antworten
Thomace
  • Forum-Beiträge: 5

09.11.2011, 11:59:49 via Website

Bin so ein Noob :)

Wusste nicht mal, dass es die gibt. Werde dann mal nachblättern!

Grüsse und danke,
Thomace

Antworten