【发布时间】:2012-12-04 15:17:10
【问题描述】:
我要求用户能够将视频上传到 Amazon S3。我已经使用 amazon sdk 中的 java 高级 api 实现了这一点。在上传过程中,如果用户点击主页按钮,上传必须在后台继续。
什么是更好的方法:?
*1 使用 AsyncTask:我尝试过使用 AsyncTask,它工作正常。但是如果上传过程在后台持续很长时间,操作系统会终止应用程序以释放内存。有什么办法可以处理这种情况,让我的应用完成上传过程。
*2 使用服务:有人建议我使用服务 + ui 通知。我喜欢使用 AsyncTask,因为它对我来说很好用。使用 Service 优于 AsyncTask 有什么优势吗?
【问题讨论】:
-
一项服务。确实。如果你在一个 Activity 中管理你的 AsyncTask,当 Activity 进入后台时它可能会被杀死
-
你说的。 “操作系统会杀死应用程序以释放内存。”。这是一个严重的劣势。
-
@fiddler 感谢您的建议。所以我想我应该使用 IntentService 而不是 AsyncTask。
标签: android file-upload android-asynctask android-service