0

我有一个异步任务去数据库并获取数据。有时,数据库连接丢失,当我在异步任务中并且应用程序崩溃时,我遇到了异常。我的问题是有一种方法可以在我处于异步线程中时捕获连接丢失异常并向用户发布连接丢失的消息并防止我的应用程序崩溃。在此先感谢您的帮助。亚历克斯

4

2 回答 2

1

步骤#1:将 存储Exception在 的数据成员中AsyncTask,当您捕获它时doInBackground()

步骤#2:在onPostExecute()中,如果你有一个Exception存储在那个数据成员中,用它做一些事情(例如,显示一个面包块)。

于 2013-08-25T16:29:43.623 回答
0

你可以这样做:

private class GetData extends AsyncTask<String, Void, String> 
    {

    @Override
        protected String doInBackground(String... params) 
            {
                         try{
                                      //Access DB here
                                      return "Success";
                                    }
                                 catch(Exception e)
                                   { 
                                     return "Exception"
                                     }
            }

    @Override
    protected void onPreExecute() 
        {

        }

    @Override
    protected void onPostExecute(String result)
        {
            if (result.equalsIgnoreCase("Success")) 
                {
                    //Do your operation
                }
            else if (result.equalsIgnoreCase("Exception"))
                {
                    //Display Exception here
                }
            }

    }
于 2013-08-25T16:47:22.113 回答