Android Manifest Fehler Screenwechsel

  • Antworten:16
Sebastian Marmen
  • Forum-Beiträge: 11

02.04.2014, 21:07:07 via Website

Hallo,
ich hab eine Frage bezüglich der AndroidManifest.xml

Ich hab eine App fertig geschrieben.

in jeder Activity- Klasse hab ich mittels

Intent intent=new Intent(this,BeispielXYZ.class);
startActivity(intent);

eine andere Activity-Klasse aufgerufen.


In der AndroidManifest.xml hab ich dann alle Activity´s nacheinander aufgelistet, da ich herausfand, dass sie dort bekannt sein müssen, damit man den activity-screen wechseln kann.


<activity
android:name="com.example.pogramm.GuiBeispiel"
android:configChanges="orientation|keyboardHidden|screenSize"
android:label="@string/app_name"
android:theme="@style/FullscreenTheme" />


Mein Problem ist:

ich komm vom hauptbildschirm in die zweite activity, aber von dort nicht mehr weiter und die Anwendung stürzt mir ab.

Muss ich in der Manifest eventuell die activity´s anders definieren, oder wenn ich von activity1->activity2->activity3 springe irgendwie schachteln, oder muss ich alle verwendeten intents einer activity auch in der Android-Mainfest bekannt machen. wenn ja wie mache ich das mit dieser startactivity weitergabe?

Antworten
impjor
  • Forum-Beiträge: 1.793

02.04.2014, 21:21:40 via App

Nein, alle Activitys müssen ganz normal untereinander im Manifest deklariert werden, Reihenfolge ist egal.

Sieh dir doch mal das LogCat an, dort steht der genaue Fehler und wann / wo im Code er auftritt. Höchstwahrscheinlich liegt es nicht an den Activitys.

Liebe Grüße impjor.

Für ein gutes Miteinander: Unsere Regeln
Apps für jeden Einsatzzweck
Stellt eure App vor!

Antworten
Gelöschter Account
  • Forum-Beiträge: 2.492

02.04.2014, 21:22:41 via Website

Die Launcher Activity ist bei mir so:
1<activity
2 android:name="com.example.Start"
3 android:label="@string/app_name" >
4 <intent-filter>
5 <action android:name="android.intent.action.MAIN" />
6
7 <category android:name="android.intent.category.LAUNCHER" />
8 </intent-filter>
9 </activity>

und jede andere so:
1<activity
2 android:name="com.example.weitere"
3 android:label="@string/app_name" >
4 <intent-filter>
5 <action android:name="com.example.WEITERE" />
6
7 <category android:name="android.intent.category.DEFAULT" />
8 </intent-filter>
9 </activity>

wobei man den android:name bei action auch anders schreiben kann aber ich hab das so gelernt :D

Antworten
Sebastian Marmen
  • Forum-Beiträge: 11

02.04.2014, 21:35:06 via Website

was macht der intent-filter? ich hab wie gesagt das problem, dass ich in die zweite aktivität wechseln kann, aber von dort aus nicht mehr in die dritte.

Antworten
Gelöschter Account
  • Forum-Beiträge: 2.492

02.04.2014, 21:44:59 via Website

Das kann ich dir leider nicht sagen das hab ich als ich angefangen bin zu programmieren einfach so übernommen und mich seitdem nicht viel um das Manifest gekümmert :D
Wenn die App abstürzt, dann mach das was impjor geschrieben hat und schau mal in die Logcat was für ein error angezeigt wird.

Antworten
Sebastian Marmen
  • Forum-Beiträge: 11

02.04.2014, 21:46:22 via Website

ist das eine app auf dem tab ? hab gerade eine mit so einem bezeichner heruntergeladen.

Antworten
Gelöschter Account
  • Forum-Beiträge: 2.492

02.04.2014, 21:50:19 via Website

Die LogCat?
Wenn du in eclipse programmierst musst du oben auf "Window" dann auf "Show View" -> "other" -> "Android" -> "LogCat"
Da kannst du dann wenn du dein Handy angeschlossen hast (oder Emulator) schauen was für ein Fehler angezeigt wird.

Antworten
Sebastian Marmen
  • Forum-Beiträge: 11

02.04.2014, 21:54:15 via Website

habs jetzt in eclipse angezeigt, aber es reagiert nicht, wenn ich mit kabel mein samsung tab an den laptop angeschlossen habe. das tab wird aber normal bei mir als laufwerk erkannt

Antworten
Gelöschter Account
  • Forum-Beiträge: 2.492

02.04.2014, 21:57:25 via Website

Wie hast du die App denn vorher getestet?

Antworten
Sebastian Marmen
  • Forum-Beiträge: 11

02.04.2014, 22:00:35 via Website

auf debug geklickt und ansonsten runtime

Antworten
Gelöschter Account
  • Forum-Beiträge: 2.492

02.04.2014, 22:07:56 via Website

Dann probier mal mit dem Emulator und poste nachdem die App abgestürzt ist, was in der Logcat steht (filter auf Error stellen).

Um die App auf dem Handy zu testen musst du die USB Treiber installieren und auf deinem Handy USB - Debugging aktivieren,
http://developer.android.com/tools/device.html

— geändert am 02.04.2014, 22:08:09

Antworten
Sebastian Marmen
  • Forum-Beiträge: 11

02.04.2014, 22:09:23 via Website

Ich krieg zwar die logcatoption angezeigt und auch das consolenfenster, aber beim aufmachen des programms logt der nicht.

auf jedenfall reagiert die anwendung nicht. dann kommt eine fehlermeldung programmname angehalten und minimiert die anwendung. wenn man dann die anwendung wieder aufruft startet sie wieder im startbildschirm.

Antworten
Gelöschter Account
  • Forum-Beiträge: 2.492

02.04.2014, 22:13:59 via Website

Du startest die App normal -> gehst zur dritten Activity -> App stürzt ab -> du schaust in die LogCat und schaust dir die Errors an.
Geht irgendwas davon nicht?

Antworten
Sebastian Marmen
  • Forum-Beiträge: 11

02.04.2014, 22:39:04 via Website

das müsste die Stelle sein. Mit einer nullpointerexception glaub ich



21:34:09.251: D/PowerManagerService(328): acquireDVFSLockLocked : type : DVFS_MIN_LIMIT frequency : 1008000 uid : 1000 pid : 328 tag : ActivityManager
04-02 21:34:09.251: W/ActivityManager(328): mDVFSLock.acquire()
04-02 21:34:09.298: D/KeyguardViewMediator(328): setHidden false
04-02 21:34:09.305: D/AndroidRuntime(15812): Shutting down VM
04-02 21:34:09.305: W/dalvikvm(15812): threadid=1: thread exiting with uncaught exception (group=0x41c512a0)
04-02 21:34:09.313: E/AndroidRuntime(15812): FATAL EXCEPTION: main
04-02 21:34:09.313: E/AndroidRuntime(15812): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.tab/com.example.tab.GuiMenuControl}: java.lang.NullPointerException
04-02 21:34:09.313: E/AndroidRuntime(15812): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2021)
04-02 21:34:09.313: E/AndroidRuntime(15812): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2122)
04-02 21:34:09.313: E/AndroidRuntime(15812): at android.app.ActivityThread.access$600(ActivityThread.java:140)
04-02 21:34:09.313: E/AndroidRuntime(15812): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1228)
04-02 21:34:09.313: E/AndroidRuntime(15812): at android.os.Handler.dispatchMessage(Handler.java:99)
04-02 21:34:09.313: E/AndroidRuntime(15812): at android.os.Looper.loop(Looper.java:137)
04-02 21:34:09.313: E/AndroidRuntime(15812): at android.app.ActivityThread.main(ActivityThread.java:4895)
04-02 21:34:09.313: E/AndroidRuntime(15812): at java.lang.reflect.Method.invokeNative(Native Method)
04-02 21:34:09.313: E/AndroidRuntime(15812): at java.lang.reflect.Method.invoke(Method.java:511)
04-02 21:34:09.313: E/AndroidRuntime(15812): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:994)
04-02 21:34:09.313: E/AndroidRuntime(15812): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:761)
04-02 21:34:09.313: E/AndroidRuntime(15812): at dalvik.system.NativeStart.main(Native Method)
04-02 21:34:09.313: E/AndroidRuntime(15812): Caused by: java.lang.NullPointerException
04-02 21:34:09.313: E/AndroidRuntime(15812): at android.app.Activity.findViewById(Activity.java:1870)
04-02 21:34:09.313: E/AndroidRuntime(15812): at com.example.tab.GuiMenuControl.<init>(GuiMenuControl.java:32)
04-02 21:34:09.313: E/AndroidRuntime(15812): at java.lang.Class.newInstanceImpl(Native Method)
04-02 21:34:09.313: E/AndroidRuntime(15812): at java.lang.Class.newInstance(Class.java:1319)
04-02 21:34:09.313: E/AndroidRuntime(15812): at android.app.Instrumentation.newActivity(Instrumentation.java:1068)
04-02 21:34:09.313: E/AndroidRuntime(15812): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2012)
04-02 21:34:09.313: E/AndroidRuntime(15812): ... 11 more
04-02 21:34:09.329: E/android.os.Debug(328): !@Dumpstate > dumpstate -k -t -z -d -o /data/log/dumpstate_app_error
04-02 21:34:09.352: I/dumpstate(15831): begin
04-02 21:34:10.555: W/PowerManagerService(328): Timer 0x3->0x3|0x3
04-02 21:34:10.555: D/PowerManagerService(328): setTimeoutLocked::SmartSleepNotification : after 584300
04-02 21:34:10.555: D/PowerManagerService(328): setTimeoutLocked::SmartSleep : after 588300
04-02 21:34:14.329: D/KeyguardViewMediator(328): setHidden false
04-02 21:34:14.337: D/KeyguardViewMediator(328): setHidden false

— geändert am 02.04.2014, 22:39:39

Antworten
Sebastian Marmen
  • Forum-Beiträge: 11

02.04.2014, 22:41:30 via Website

04-02 21:34:09.313: E/AndroidRuntime(15812): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.example.tab/com.example.tab.GuiMenuControl}: java.lang.NullPointerException


speziell woll das . warum macht er einen unterordner? eigentlich will ich das ja nicht. die guiMenuControl liegt in com.example.tab.

Antworten
Sebastian Marmen
  • Forum-Beiträge: 11

02.04.2014, 23:33:39 via Website

jemand eine Idee?

Antworten