簡體   English   中英

Android線程主要退出

[英]Android thread main exiting

我在“ onCreate”中有線程,該線程是從Web獲取內容的。 在獲取內容時,我有進度對話框。

new Thread() {

     public void run() {

     Get_content() ;


    handler.sendEmptyMessage(0);
     }

     }.start();

但是,如果我在運行時將顯示器旋轉到橫向模式,則我的應用程序會強制關閉。 在日志中,我有以下內容:“由於未捕獲的異常而導致線程主退出”

這是我的日志:

W / dalvikvm(17144):threadid = 3:線程以未捕獲的異常退出(group = 0x40013140)E / AndroidRuntime(17144):未捕獲的處理程序:由於未捕獲的異常而導致線程主要退出E / AndroidRuntime(17144):java.lang.IllegalArgumentException :視圖未附加到窗口管理器E / AndroidRuntime(17144):位於android.view.WindowManagerImpl.findViewLocked(WindowManagerImpl.java:356)E / AndroidRuntime(17144):位於android.view.WindowManagerImpl.removeView(WindowManagerImpl.java:201 )E / AndroidRuntime(17144):位於android.view.Window $ LocalWindowManager.removeView(Window.java:400)E / AndroidRuntime(17144):位於android.app.Dialog.dismissDialog(Dialog.java:268)E / AndroidRuntime (17144):位於android.app.Dialog.access $ 000(Dialog.java:69)E / AndroidRuntime(17144):位於android.app.Dialog $ 1.run(Dialog.java:103)E / AndroidRuntime(17144):在android.app.Dialog.dismiss(Dialog.java:252)E / AndroidRuntime(17144):在com.webservice.KursnaLista $ 1.handleMessage(KursnaLista.java:77)E / AndroidRuntime(17144):在android.os。 HANDL er.dispatchMessage(Handler.java:99)E / AndroidRuntime(17144):位於android.os.Looper.loop(Looper.java:123)E / AndroidRuntime(17144):位於android.app.ActivityThread.main(ActivityThread。 java:3948)E / AndroidRuntime(17144):位於java.lang.reflect.Method.invokeNative(本機方法)E / AndroidRuntime(17144):位於java.lang.reflect.Method.invoke(Method.java:521)E / AndroidRuntime(17144):com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:782)E / AndroidRuntime(17144):com.android.internal.os.ZygoteInit.main(ZygoteInit.java :540)E / AndroidRuntime(17144):在dalvik.system.NativeStart.main(本機方法)I / dalvikvm(17144):threadid = 7:對信號3作出反應I / ActivityManager(59):處理com.webservice(pid 17144)已死。

發生的情況是方向改變,活動被殺死並重新創建。 但是,由於您啟動了一個線程並且該線程仍在運行,因此它不會被殺死,並且當它完成並嘗試關閉“進度對話框”時,會導致FC,因為進度對話框不存在。 這是一個非常常見的問題,您可以檢出嘗試解決此問題的droid-fu庫,或者您可以更聰明地執行Threaded任務(例如,如果要花費大量時間才能完成,那么也許它在后台服務中)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM