在Android中下载一个文件或多个文件的最佳做法是什么?

拉西什语

一个。下载管理器Api b。意向服务c。异步任务

请让我知道哪种是最佳做法。是否可以使用上述条款取消正在进行的下载,如果可以,请向我提供摘要。

哈迪克·特里维迪

答:下载管理器:

下载管理器是一项系统服务,可处理长时间运行的HTTP下载。客户端可以请求将URI下载到特定的目标文件。下载管理器将在后台进行下载,负责HTTP交互,并在出现故障或在连接更改和系统重新启动后重试下载。

因此,如果您不想为HTTP连接错误处理感到烦恼,而只想传递文件的源和目标,请使用DownloadManager。

您可以通过调用DownloadManager的remove(long...)方法来取消下载为此,您需要下载的ID

B:IntentService

IntentService是Services的基类,可按需处理异步请求(表示为Intent)。客户通过startService(Intent)电话发送请求服务会根据需要启动,使用工作线程依次处理每个Intent,并在工作耗尽时自行停止。

这种“工作队列处理器”模式通常用于从应用程序的主线程卸载任务。因此主要用于创建队列。

所有请求都在单个工作线程上处理-它们可能花费必要的时间(并且不会阻塞应用程序的主循环),但是一次仅处理一个请求。

您可以绑定到intentservice并创建一种取消或使下载出队的方法。

C:AsyncTasks

AsyncTasks专为无法运行UI线程的一次性耗时任务而设计。一个常见的示例是按下按钮时获取/处理数据。因此,对于长时间运行的下载而言,这不是最佳的解决方案。

您也可以使用AsyncTask取消下载。为此,您需要cancel()使用asynctask方法。在读取响应流的循环中,继续使用一些标志检查asynctask的cancel方法是否被调用。如果cancel方法被调用,则停止下载,否则继续下载。

希望您能通过此答案找到最好的方法。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么在我的WebClient DownloadFileAsync方法中下载一个空文件?

来自分类Dev

在PHP中下载一个文件夹

来自分类Dev

创建多个xml文件并将其导出为一个zip文件的最佳方法是什么?

来自分类Dev

FileZilla:将多个文件夹同步到一个文件夹中的最佳方法是什么?

来自分类Dev

为什么当我尝试在laravel中下载PDF文件时,打开一个包含奇怪字符的文件?

来自分类Dev

以一个或多个文件下载Wiki

来自分类Dev

将多个文件中的单词出现次数写入文件并将结果写入另一个文件的最佳方法是什么

来自分类Dev

从另一个PHP文件更改一个PHP文件中的变量的最佳方法是什么

来自分类Dev

在Android应用中下载文件的最佳方法

来自分类Dev

用c#更新一个非常大的文件的最佳方法是什么

来自分类Dev

在Django中保存机密文件的最佳做法是什么?

来自分类Dev

我如何在一个txt文件中下载Wiki部分

来自分类Dev

提示将多个文件流下载为一个

来自分类Dev

使用R从一个网址下载多个文件

来自分类Dev

在一个文件中存储多个值 - 最佳格式?

来自分类Dev

使用一个进度条下载多个文件 java / Android

来自分类Dev

是下载多个文件比一次下载一个文件快吗?

来自分类Dev

如何在JS中下载多个文件

来自分类Dev

快速创建多个文件的.cab文件的最佳方法是什么?

来自分类Dev

一个服务器文件中有多个Node.js“应用”是不好的做法?

来自分类Dev

在python中下载超过1000个文件

来自分类Dev

一个文件中几个<?php?>的逻辑是什么

来自分类Dev

在Android Webview中下载文件

来自分类Dev

Android-在AsyncTask中下载并保存文件

来自分类Dev

如何在Android中下载文件

来自分类Dev

Javascript下载多个文件并连接成一个文件

来自分类Dev

创建多个csv文件并使用rails在一个zip归档文件中全部下载

来自分类Dev

将多个文件放在一个zip文件中,然后使用javascript下载

来自分类Dev

一个快速生产者多个慢速消费者的最佳方案是什么?

Related 相关文章

  1. 1

    为什么在我的WebClient DownloadFileAsync方法中下载一个空文件?

  2. 2

    在PHP中下载一个文件夹

  3. 3

    创建多个xml文件并将其导出为一个zip文件的最佳方法是什么?

  4. 4

    FileZilla:将多个文件夹同步到一个文件夹中的最佳方法是什么?

  5. 5

    为什么当我尝试在laravel中下载PDF文件时,打开一个包含奇怪字符的文件?

  6. 6

    以一个或多个文件下载Wiki

  7. 7

    将多个文件中的单词出现次数写入文件并将结果写入另一个文件的最佳方法是什么

  8. 8

    从另一个PHP文件更改一个PHP文件中的变量的最佳方法是什么

  9. 9

    在Android应用中下载文件的最佳方法

  10. 10

    用c#更新一个非常大的文件的最佳方法是什么

  11. 11

    在Django中保存机密文件的最佳做法是什么?

  12. 12

    我如何在一个txt文件中下载Wiki部分

  13. 13

    提示将多个文件流下载为一个

  14. 14

    使用R从一个网址下载多个文件

  15. 15

    在一个文件中存储多个值 - 最佳格式?

  16. 16

    使用一个进度条下载多个文件 java / Android

  17. 17

    是下载多个文件比一次下载一个文件快吗?

  18. 18

    如何在JS中下载多个文件

  19. 19

    快速创建多个文件的.cab文件的最佳方法是什么?

  20. 20

    一个服务器文件中有多个Node.js“应用”是不好的做法?

  21. 21

    在python中下载超过1000个文件

  22. 22

    一个文件中几个<?php?>的逻辑是什么

  23. 23

    在Android Webview中下载文件

  24. 24

    Android-在AsyncTask中下载并保存文件

  25. 25

    如何在Android中下载文件

  26. 26

    Javascript下载多个文件并连接成一个文件

  27. 27

    创建多个csv文件并使用rails在一个zip归档文件中全部下载

  28. 28

    将多个文件放在一个zip文件中,然后使用javascript下载

  29. 29

    一个快速生产者多个慢速消费者的最佳方案是什么?

热门标签

归档