我正在使用ViewPager,它使用三个片段,其中一个片段使用数据库操作。 因此,当我启动我的应用程序时,它需要花费很多时间来加载(因为数据库操作)并且它在大多数时间都会崩溃。 我在Fragment中使用AsyncTask进行数据库操作,但仍存在这个问题。 任何其他解决方案??
答案 0 :(得分:1)
您是否已经考虑过AsyncTasks的这些规则?
此类必须遵循一些线程规则才能正常工作:
- 必须在UI线程上加载AsyncTask类。这是从JELLY_BEAN开始自动完成的。
- 必须在UI线程上创建任务实例。必须在UI线程上调用execute(Params ...)。
- 不要手动调用onPreExecute(),onPostExecute(Result),doInBackground(Params ...),onProgressUpdate(Progress ...)。
- 任务只能执行一次(如果尝试第二次执行,则会抛出异常。)
来自:http://developer.android.com/reference/android/os/AsyncTask.html
答案 1 :(得分:0)