簡體   English   中英

Android:強制線程關閉並顯示警報對話框

[英]Android: force a thread to close and display an alert dialog

我有一個線程在其中捕獲異常。 我想要的是,當發生這種情況時,線程關閉/退出/死亡或我應該說的任何內容,並顯示一個警報對話框(不像敬酒!)。

這是我的代碼:

    t1 = new Thread(new Runnable()
    {   
        public void run() 
        {
            Looper.prepare();
            StringBuffer stringBuffer = new StringBuffer("");
            BufferedReader bufferedReader = null;
            URI uri = null;

            try
            {
                requestAndMakeSheet(stringBuffer, bufferedReader, uri);
            }
            catch (Exception e)
            {
                //Toast.makeText(getBaseContext(), "Web Request Error", Toast.LENGTH_LONG).show();
                //Log.e("Web Request Error", e.getMessage());
                t1.interrupt();
                AlertDialog.Builder parsingErrorBox = new AlertDialog.Builder(ReservationInfo.this);
                parsingErrorBox.setTitle("Login error");
                parsingErrorBox.setMessage("You may have to check your credentials and then try again.");
                parsingErrorBox.show();
            }
            finally
            {
                if (bufferedReader!=null)
                {
                    try
                    {
                        bufferedReader.close();
                    }
                    catch (IOException ioe)
                    {
                        Log.e("Web Request Error", ioe.getMessage());
                    }
                }
            }
        }           
    });
    t1.start();
    try 
    {
        t1.join();
        mWebview.loadUrl("file:///"+Environment.getExternalStorageDirectory()+"/MySheet.html");
        setContentView(mWebview);
    } 
    catch (InterruptedException e) 
    {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    //End of le thread
}

這段代碼崩潰了,我認為它與t1.interrupt有關(嘗試停止,但也沒有用)。

如何解決此代碼? 先感謝您。

為什么仍然有t1.interrupt()? 似乎您的線程將被終止,所以將其放置在那里的原因是什么?

暫無
暫無

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

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