![](/img/trans.png)
[英]how to delete GCMRegistered device id from database if user Uninstall application
[英]Uninstall application programmatically: crash rotating the device
我正在嘗試使用所有安裝的應用程序制作一個列表視圖,您可以在其中創建多個卸載應用程序。 我有個問題。 這是代碼。
當我顯示對話框時,如果旋轉設備,請卸載所選的應用程序,該應用程序將因該錯誤而崩潰。
01-19 18:50:13.571: E/AndroidRuntime(25609): FATAL EXCEPTION: main
01-19 18:50:13.571: E/AndroidRuntime(25609): Process: com.myPackage.name, PID: 25609
01-19 18:50:13.571: E/AndroidRuntime(25609): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=1, result=0, data=null} to activity {com.myPackage.name/com.myPackage.name.class}: java.lang.NullPointerException
01-19 18:50:13.571: E/AndroidRuntime(25609): at android.app.ActivityThread.deliverResults(ActivityThread.java:3385)
01-19 18:50:13.571: E/AndroidRuntime(25609): at android.app.ActivityThread.handleSendResult(ActivityThread.java:3428)
01-19 18:50:13.571: E/AndroidRuntime(25609): at android.app.ActivityThread.access$1300(ActivityThread.java:145)
01-19 18:50:13.571: E/AndroidRuntime(25609): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1254)
01-19 18:50:13.571: E/AndroidRuntime(25609): at android.os.Handler.dispatchMessage(Handler.java:102)
01-19 18:50:13.571: E/AndroidRuntime(25609): at android.os.Looper.loop(Looper.java:136)
01-19 18:50:13.571: E/AndroidRuntime(25609): at android.app.ActivityThread.main(ActivityThread.java:5081)
01-19 18:50:13.571: E/AndroidRuntime(25609): at java.lang.reflect.Method.invokeNative(Native Method)
01-19 18:50:13.571: E/AndroidRuntime(25609): at java.lang.reflect.Method.invoke(Method.java:515)
01-19 18:50:13.571: E/AndroidRuntime(25609): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:781)
01-19 18:50:13.571: E/AndroidRuntime(25609): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
01-19 18:50:13.571: E/AndroidRuntime(25609): at dalvik.system.NativeStart.main(Native Method)
01-19 18:50:13.571: E/AndroidRuntime(25609): Caused by: java.lang.NullPointerException
01-19 18:50:13.571: E/AndroidRuntime(25609): at com.myPackage.name.class.onActivityResult(myclass.java:91)
01-19 18:50:13.571: E/AndroidRuntime(25609): at android.app.Activity.dispatchActivityResult(Activity.java:5423)
01-19 18:50:13.571: E/AndroidRuntime(25609): at android.app.ActivityThread.deliverResults(ActivityThread.java:3381)
01-19 18:50:13.571: E/AndroidRuntime(25609): ... 11 more
第91行是for(int a = 0; a
嘗試將其放在Activity
定義內的AndroidManifest.xml
文件中:
android:configChanges="orientation|keyboardHidden|screenSize"
如果設備旋轉,這將防止您的應用重啟。
一些設備配置可以在運行時更改(例如屏幕方向,鍵盤可用性和語言)。 發生此類更改時,Android將重新啟動runningActivity(onDestroy(),然后調用onCreate())。
為了正確處理重啟,重要的是您的活動必須在正常的活動生命周期內恢復其先前狀態,在Android生命周期中,Android會在銷毀活動之前先調用onSaveInstanceState(),以便您可以保存有關應用程序狀態的數據。 然后,您可以在onCreate()或onRestoreInstanceState()期間還原狀態。
如果您的應用程序在特定的配置更改期間不需要更新資源,並且您有一個性能限制,要求您避免活動重新啟動,則可以聲明您的活動自行處理配置更改,從而防止系統重新啟動您的活動。
而且您可以使用android:configChanges =“在此處放置需要的屬性”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.