0
我有一個有很多活動和服務的android應用程序。如果我打開另一個應用程序,而我的應用程序運行和Android需要資源殺死了我的申請,我收到空指針異常錯誤信息是這樣的:控制android如何殺死我的應用程序
07-08 18:14:48.567: E/AndroidRuntime(16300): FATAL EXCEPTION: main
07-08 18:14:48.567: E/AndroidRuntime(16300): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{icg.android.start/icg.android.web.CustomWebActivity}: java.lang.NullPointerException
07-08 18:14:48.567: E/AndroidRuntime(16300): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1880)
07-08 18:14:48.567: E/AndroidRuntime(16300): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1981)
07-08 18:14:48.567: E/AndroidRuntime(16300): at android.app.ActivityThread.access$600(ActivityThread.java:123)
07-08 18:14:48.567: E/AndroidRuntime(16300): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1147)
07-08 18:14:48.567: E/AndroidRuntime(16300): at android.os.Handler.dispatchMessage(Handler.java:99)
07-08 18:14:48.567: E/AndroidRuntime(16300): at android.os.Looper.loop(Looper.java:137)
07-08 18:14:48.567: E/AndroidRuntime(16300): at android.app.ActivityThread.main(ActivityThread.java:4424)
07-08 18:14:48.567: E/AndroidRuntime(16300): at java.lang.reflect.Method.invokeNative(Native Method)
07-08 18:14:48.567: E/AndroidRuntime(16300): at java.lang.reflect.Method.invoke(Method.java:511)
07-08 18:14:48.567: E/AndroidRuntime(16300): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784)
07-08 18:14:48.567: E/AndroidRuntime(16300): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551)
07-08 18:14:48.567: E/AndroidRuntime(16300): at dalvik.system.NativeStart.main(Native Method)
07-08 18:14:48.567: E/AndroidRuntime(16300): Caused by: java.lang.NullPointerException
07-08 18:14:48.567: E/AndroidRuntime(16300): at icg.guice.Dependencies.injectDependencies(Dependencies.java:238)
07-08 18:14:48.567: E/AndroidRuntime(16300): at icg.guice.GuiceActivity.<init>(GuiceActivity.java:9)
07-08 18:14:48.567: E/AndroidRuntime(16300): at icg.android.web.CustomWebActivity.<init>(CustomWebActivity.java:16)
07-08 18:14:48.567: E/AndroidRuntime(16300): at java.lang.Class.newInstanceImpl(Native Method)
07-08 18:14:48.567: E/AndroidRuntime(16300): at java.lang.Class.newInstance(Class.java:1319)
07-08 18:14:48.567: E/AndroidRuntime(16300): at android.app.Instrumentation.newActivity(Instrumentation.java:1023)
07-08 18:14:48.567: E/AndroidRuntime(16300): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1871)
我想如果機器人殺死我的活動來檢測,但搜索,我發現,沒有方法來做到這一點。
至少可以避免在設備屏幕上顯示錯誤信息嗎?我寧願應用程序以無聲方式崩潰。
感謝
如果你看到一個空指針異常,你有一個編程錯誤,你需要修復它。這不是Android關閉你,你正在崩潰。你不會發布足夠的信息來爲你解決它。發佈完整的logcat。 –
如果系統殺死我的應用程序,我會看到空指針。如果我關閉應用程序一切正常。 – Plebios
只要Android不會猛烈地謀殺你的應用程序(例如拔出電池),就會一直調用'onPause()'方法,這樣你就可以使用它來清理應用程序,以防它死亡。 – Josh