3
A
回答
2
这取决于类型的同步...例如:
- 如果您的同步过程包括只下载1包含所有新数据(比如说一个JSON文件)的文件,这很容易。你只需要测量你下载了多少文件(看看这个问题Download a file with Android, and showing the progress in a ProgressDialog)
- 如果你的同步过程涉及到下载不同的文件(比如图像,文本等)......你可以实现进度酒吧取决于有多少文件需要下载(希望它们的重量有多少)。
- 如果您下载不同的文件,但是他们的同步不同,您可以先询问服务器同步将使用多少个文件以及每个文件的大小。然后像上面一样做。
理想情况下,您必须考虑您正在接收的文件大小+您使用它们的时间。
3
使用AsyncTask进行连接。
在preExecute中获取要下载的对象的大小,使用对象的上限大小创建进度条等。
onProgressUpdate计算自上次进度更新以来已完成了多少工作,以便您可以估算时间并更新您的进度栏,并且总计完成。
相关问题
- 1. 使进度条与计时器同步
- 2. 如何同步与服务器时间
- 3. 与服务器同步GIT
- 4. 同步PouchDB与服务器
- 5. JSF进度条 - 服务器端进程
- 6. 如何在与服务器连接时显示进度条
- 7. 与FTP服务器的文件同步
- 8. 下载服务器进度条pecl
- 9. 同步倒数计时器和进度条
- 10. 服务未进行同步
- 11. 通过同步服务与iCal同步
- 12. 同步架构服务器到服务器同步
- 13. 同步eWon模块与SQL服务器
- 14. PhpStorm不与服务器同步
- 15. 不TortoiseHg自动与服务器同步
- 16. 同步数据库与服务器
- 17. 与服务器同步数据
- 18. 角度服务与控制器同步工作
- 19. git服务器与svn服务器同步
- 20. 在从WP7服务器获取数据时的进度条
- 21. Grails/Dojo进度条从控制器/服务获取进度
- 22. 同步本地和服务器时间
- 23. 异步进度条
- 24. 倒数计时器与进度条
- 25. ASP/AJAX - 与服务器计时器同步的客户端计时器
- 26. 从服务器下载文件时显示进度条
- 27. 如何在android中连接服务器时显示进度条?
- 28. GWT - 同步 - 服务器端
- 29. 服务器场同步
- 30. 同步SQL服务器sqllite
非常感谢您的快速回答。目前我只想下载json文件。所以,你发送的链接对我来说应该足够了。我会试试这个,如果有问题让你知道。 – Sapan 2011-05-09 17:09:11
HI,在我的主类中,我创建了一个progressDialog,然后调用了DownLoad File的执行函数。如果连接到服务器时出错,我想更新进度条中的消息,然后关闭进度dialox框。我试图在doInBackground函数的catch块中做这件事,但我得到一个错误:只有原始线程可以修改进度对话框?我应该怎么做?我甚至无法在DownLoad文件类中创建Toast消息 – Sapan 2011-05-10 05:40:31
这是因为doInBackground方法在另一个线程中执行。为了在它里面做UI的东西,你必须使用'runOnUiThread'方法。查找有关它的信息。 – Cristian 2011-05-10 13:12:17