2017-01-27 3 views
0

Ich habe dieses post gefunden, wie eine Anwendung zu starten, nachdem Android OS Boot abgeschlossen ist. Ich habe es gut gemacht - ich fange die Sendung android.intent.action.BOOT_COMPLETED, aber leider stürzt meine App ab und ich kann es nicht mit logcat beobachten, weil ich das Gerät neu starten muss, um zu sehen, ob meine Funktion funktioniert.Android App Auto Boot fehlschlägt - BroacastReceiver

Weiß jemand, wie ich eine Ausnahme abfangen kann, damit ich sehen kann, warum meine App abstürzt ODER weiß jemand, was das Problem sein könnte (wenn Sie das gleiche Problem erlebt haben)?

+0

Wickeln Sie, was immer Sie denken, könnte in einem Versuch zu brechen; Erfassen Sie Ihre eigenen Protokolle. –

+0

hey, ich bin relativ neu mit android, ich habe mit try-catch umgeben ... aber weiß nicht wo ich die ausnahme speichern soll. Nur was ich weiß ist, es als Toast zu drucken ... kannst du mir das bitte ein bisschen erklären? – hogar

+0

Sie können zu Logcat schreiben, diesen Link zu [Dokumentation] (https://developer.android.com/reference/android/util/Log.html) – 0X0nosugar

Antwort

1

ich das Problem gelöst haben ... Die anfängliche Absicht war:

Intent i = new Intent(); 
i.setClassName("com.example.app", "MainActivity"); 
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 

ich in ihm einen Toast mit Ausnahme gemacht und machte auf Emulator Printscreen.

Die Ausnahme sagte dazu:

android.content.ActivityNotFoundException: Kann nicht explizit Aktivitätsklasse finden {com.example.app/com.example.app.MainActivity}; Hast du diese Aktivität in deiner AndroidManifest.xml deklariert?

Nach der Überprüfung war meine Aktivität in der Datei. So gegoogelt ich this und machte Korrektur in meiner Absicht:

Intent i = new Intent(); 
i.setClassName(context.getPackageName(), "com.example.app.sunshine.MainActivity"); 
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 

und context.startActivity(i); die App nach dem Neustart gestartet.