Asynctask仍在阻止Android应用程序中的主线程

时间:2013-01-29 00:53:43

标签: android android-asynctask

我正在尝试使用Parse

上存储的SQLite数据库更新应用程序的SQLite数据库

我正在调用函数来更新Asynctask中的数据库,但是当我的应用程序挂起时它仍然阻塞主线程,并在执行函数时显示“Not responses”错误。

这是我的代码,它是在Activity中的onCreate()中编写的。

if (Build.VERSION.SDK_INT>=Build.VERSION_CODES.HONEYCOMB){

        new SaveCourses().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR, mDbHelper);
            }
            else {
                new SaveCourses().execute(mDbHelper);

            }

SaveCourses类写在Activity类的末尾,

class SaveCourses extends AsyncTask<Object, Integer, Object> {
    @Override
    protected Object doInBackground(Object... ctx) {
    System.out.println("in background method - async");
    ((TestAdapter) ctx[0]).SaveCourses_1();
    return null;
    }

    protected void onPostExecute(Object... mDbHelper) {
        ((TestAdapter) mDbHelper[0]).close();   
    }
    @Override
    protected void onProgressUpdate(Integer... values)
    {

    }

}

请你指导一下我的代码有什么问题。 提前谢谢。

0 个答案:

没有答案