在开发Android应用程序时,如果您希望从web服务器异步下载数据,您将如何解决这个问题?
现在我正在开发一个Android应用程序,我想用WebService从web服务器异步下载数据,我如何解决它??使用:在开发Android应用程序时,如果您希望从web服务器异步下载数据,您将如何解决这个问题?,android,web-services,asynchronous,Android,Web Services,Asynchronous,现在我正在开发一个Android应用程序,我想用WebService从web服务器异步下载数据,我如何解决它??使用: 私有类下载文件任务扩展异步任务{ 受保护的长doInBackground(URL…URL){ int count=url.length; 长totalSize=0; for(int i=0;i
私有类下载文件任务扩展异步任务{
受保护的长doInBackground(URL…URL){
int count=url.length;
长totalSize=0;
for(int i=0;i
}使用:
私有类下载文件任务扩展异步任务{
受保护的长doInBackground(URL…URL){
int count=url.length;
长totalSize=0;
for(int i=0;i
}有几种方法可以做到这一点。其中最流行的是使用Android API提供的
AsyncTask
类
您可以阅读有关AsyncTask
《官方开发人员指南》中还有一整页专门介绍线程和进程的内容,可以使用。有几种方法。其中最流行的是使用Android API提供的
AsyncTask
类
您可以阅读有关AsyncTask
《官方开发人员指南》中还有一整页专门介绍线程和进程的内容。您是否使用任何框架/库?通常,asynctask是进行通信的方式。您是否使用任何框架/库?通常异步任务是通信的方式
private class DownloadFilesTask extends AsyncTask<URL, Integer, Long> {
protected Long doInBackground(URL... urls) {
int count = urls.length;
long totalSize = 0;
for (int i = 0; i < count; i++) {
totalSize += Downloader.downloadFile(urls[i]);
publishProgress((int) ((i / (float) count) * 100));
// Escape early if cancel() is called
if (isCancelled()) break;
}
return totalSize;
}
protected void onProgressUpdate(Integer... progress) {
setProgressPercent(progress[0]);
}
protected void onPostExecute(Long result) {
showDialog("Downloaded " + result + " bytes");
}