我有一个 AsyncTask 运行完美,但如果用户翻转他的手机,AsyncTask 会自动停止。
有谁知道我可以采取或启用 AsyncTask 等任何功能的预防措施?
谢谢。
我有一个 AsyncTask 运行完美,但如果用户翻转他的手机,AsyncTask 会自动停止。
有谁知道我可以采取或启用 AsyncTask 等任何功能的预防措施?
谢谢。
AsyncTask 非常适合在 UI 线程之外运行,但它确实有一些问题,其中之一是配置更改会导致它停止。
我建议查看 Android 中可用的 Loader 类,它还允许您运行 UI 线程,但可以处理 AsyncTask 的一些问题。例如配置更改问题。
Loaders 的 Android 开发者指南:http: //developer.android.com/guide/components/loaders.html
Loader 有一个特定的子类,称为 AsyncTaskLoader,它具有与 AsyncTask 基本相同的功能,但不存在配置问题等一些问题。如果您只是想跳入并修复您的代码,我建议您只使用下面的链接而不是上面的通用加载器指南。
AsyncTaskLoader:http: //developer.android.com/reference/android/content/AsyncTaskLoader.html
AsyncTask 被设计成这样运行。使用服务或 AsyncTaskLoader。