我有一些关于在android中使用服务下载多个文件的问题。 从谷歌搜索,所有推荐的意向服务,但在我的情况下 我在列表视图中有文件列表,如果用户选择将下载的任何文件与通知进度,如果用户按下活动服务后退按钮需要运行后台,用户可以选择多个文件,在每个文件中都有单独的进度通知栏< / p>
我的问题是
如果我选择意向服务,我怎样才能动态传递文件URL 用户选择文件,如果我为每个人打算调用启动服务 url它不会下载并行
如果我选择服务并绑定它,从文件绑定服务无帮助 长期运行
哪种方法最好实现,以及如何将动态网址传递给 服务并更新下载网址列表
由于
答案 0 :(得分:0)
下载管理器是一种处理长时间运行的HTTP下载的系统服务。客户端可以请求将URI下载到特定目标文件。下载管理器将在后台进行下载,负责HTTP交互并在发生故障或连接更改和系统重新启动后重试下载。
在您的活动中,您定义了列表视图:
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position,
long id) {
String urlOfFileToDownload = (String) parent.getItemAtPosition(position);
// Object item = parent.getItemAtPosition(position);
DownloadManager downloadmanager = (DownloadManager) getSystemService(Context.DOWNLOAD_SERVICE);
Uri uri = Uri.parse(urlOfFileToDownload);
DownloadManager.Request request = new DownloadManager.Request(uri);
Long reference = downloadmanager.enqueue(request);
}
});