目前我使用Activity将图像上传到网页,我正在使用AsyncTask,一切都运行良好。我目前使用Activity来实现这一点,基本上活动允许用户输入一些细节,拍照然后提交,显示进度对话框直到收到响应。当在E或G连接上时,整个过程可能非常冗长(超过一分钟)。在收到回复之前,无法完成活动并返回上一个活动(这就是我想要的)。
我有什么选择。目前,如果我按下主页按钮,过程正常并继续上传,应用程序可以最小化可编程性吗? 。我发现这种方法存在许多问题,例如,如果活动关闭或发生错误。
我能想到的唯一方法是将实际上传代码移动到服务,使用活动收集信息并允许活动为每次上传启动新服务?然后,我可以使用NotificationManager通知用户成功或失败,并处理服务中的重试。
我注意到,当从图库共享图像到Facebook时,活动立即关闭,用户通过通知收到反馈。我假设这种方法使用服务将图像上传到Facebook?
非常感谢任何帮助/建议。
此致
答案 0 :(得分:14)
我建议您使用以下设置:
使用服务而不是Activity有一些优点。例如,您不必担心配置更改(例如更改设备的方向),您不会将用户“锁定”在他无事可做的活动中等等。
上传不需要UI,因此使用活动并不是最好的方法。
简而言之:使用服务