精华内容
下载资源
问答
  • 下载码,支持断点续传支持断点续传支持断点续传
  • C# HTTP上传下载类,支持断点续传, libCurl.dll 版本:7.5
  • delphi XE10 下用IdHttp控件实现Get方法从网站下载文件的,实现断点续传,不会出现网上很多断点续传demo出现的,每次续文件大小都会变大,实际是从头开始下载的问题。
  • unity最新支持断点续传的方便,代码简单易懂。demo版本unity2021,参考文章:https://blog.csdn.net/chunyu90225/article/details/118545989
  • 使用HttpURLConnection写的一个多线程下载工具,支持断点续传
  • linux c 实现HTTP协议下载支持chunk,断点续传,重定向。
  • c#上传下载ftp(支持断点续传) 代码完全通俗易懂 注释完整
  • 局域网多文件上传下载支持断点续传。速度能到6M左右局域网,广域看带宽,最高可以3M左右(知道是否阿里云问题,1M的带宽也可以上传到1M)。
  • UnityWebRequest远端下载支持断点续传、多文件同时下载 亲测可以使用 可以自定义修改进度
  • 一种基于原生系统的下载demo支持断点续传支持多线程下载.rar,太多无法一一验证是否可用,程序如果跑起来需要自调,部分代码功能进行参考学习。
  • 如何用Qt 的方法进行HTTP 请求下载文件,能够支持断点续传(断点续即能够手动停止下载,下次可以从已经下载的部分开始继续下载未完成的部分,而没有必要从头开始上传下载),并且实时更新下载信息。整体代码考虑...
  • C#http下载支持断点续传,支持多线程,大家可下载看看
  • 主要介绍了php支持断点续传、分块下载的类的相关资料,需要的朋友可以参考下
  • 主要介绍了php实现的支持断点续传的文件下载类及其用法实例,详细讲述了PHP实现断点续传下载的原理及代码实现方法,非常具有实用价值,需要的朋友可以参考下
  • 多线程wep下载支持断点续传,可以用于支持下载工具且用户名密码登录的国外网站的文件下载
  • java命令行下载器,支持断点续传下载,多线程下载,需要的朋友可以参考下
  • UnityWebRequest下载网络资源的小框架,支持断点续传、多文件同时下载。主要功能只有两个脚本,是用的Unity5.6.2导出的。 注意:只能断点续网络资源,本地资源无法断点续
  • 基于RxJava打造的下载工具, 支持多线程下载和断点续, 智能判断是否支持断点续传等功能 Read this in other languages: 中文, English  更新日志: 更新日志搬到这里了 使用方式 准备工作 1.添加...

    RxDownload

    基于RxJava打造的下载工具, 支持多线程下载和断点续传, 智能判断是否支持断点续传等功能

    Read this in other languages: 中文English 

    更新日志:

    更新日志搬到这里了

    使用方式

    准备工作

    1.添加Gradle依赖 Download

    	dependencies{
             compile 'zlc.season:rxdownload2:2.0.4'
    	}

    2.配置权限

     	<!-- 在XML中设置权限 -->
    	<uses-permission android:name="android.permission.INTERNET"/>
        <uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
        <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

    注意: Android 6.0 以上还必须申请运行时权限, 如果遇到不能下载, 请先检查权限

    创建实例及配置

    1.创建RxDownload实例

    RxDownload rxDownload = RxDownload.getInstance(context);  //单例

    2.参数配置,可以配置的参数如下:

    RxDownload rxDownload = RxDownload.getInstance(context)
        .retrofit(myRetrofit)             //若需要自己的retrofit客户端,可在这里指定
        .defaultSavePath(defaultSavePath) //设置默认的下载路径
        .maxThread(3)                     //设置最大线程
        .maxRetryCount(3)                 //设置下载失败重试次数
        .maxDownloadNumber(5)             //Service同时下载数量
        ...

    3.下载参数说明

    • xxDownload(String url) 当只传url时,会自动从服务器获取文件名
    • xxDownload(String url, String saveName) 也可手动指定保存的文件名称
    • xxDownload(String url,String saveName,String savePath) 手动指定文件名和保存路径
    • xxDownload(DownloadBean bean) 当需要保存额外信息到数据库时,可以手动构造Download Bean,具体细节请查看源码

    开始下载

    Normal download

    • 常规下载,不具备后台下载能力
    • 适合轻量下载

    1.调用方式

    Disposable disposable = RxDownload.getInstance(this)
            .download(url)                       //只传url即可
            .subscribeOn(Schedulers.io()) 
            .observeOn(AndroidSchedulers.mainThread())
            .subscribe(new Consumer<DownloadStatus>() {
                @Override
                public void accept(DownloadStatus status) throws Exception {
                    //DownloadStatus为下载进度
                }
            }, new Consumer<Throwable>() {
                @Override
                public void accept(Throwable throwable) throws Exception {
                    //下载失败
                }
            }, new Action() {
                @Override
                public void run() throws Exception {
                    //下载成功
                }
            });

    2.暂停下载

    //获得订阅返回的Disposable.
    Disposable disposable = RxDownload.getInstance(context)
                    .download(url)...
      				
    //取消订阅, 即可暂停下载
    if (disposable != null && !disposable.isDisposed()) {
        disposable.dispose();
    }

    3.继续下载

    //重新调用download()方法,传入相同的url即可
    //若该url支持断点续传则继续下载,若不支持则重新下载
    Disposable disposable = RxDownload.getInstance(context)
                    .download(url)...

    4.transferform形式

    提供给RxJava的Compose操作符使用,例如与RxPermission结合使用

    RxPermission是为Android 6.0解决运行时权限的一个库, 这里是该库的地址: RxPermission

    disposable =  RxPermissions.getInstance(mContext)
                .request(Manifest.permission.WRITE_EXTERNAL_STORAGE) //申请存储卡权限
                .doOnNext(new Consumer<Boolean>() {
                    @Override
                    public void accept(Boolean granted)  throws Exception {
                        if (!granted) {  //权限被拒绝
                            throw new RuntimeException("no permission");
                        }
                    }
                })
                .observeOn(Schedulers.io())
                .compose(RxDownload.getInstance(context).<Boolean>transform(url))  //download
                .observeOn(AndroidSchedulers.mainThread())
                .subscribe(new Consumer<DownloadStatus>() { ... });

    Service Download

    • 使用Service进行下载, 具备后台下载能力
    • 具备下载管理功能,能设置同时下载数量
    RxDownload.getInstance(this)
            .serviceDownload(url)   //只需传url即可,添加一个下载任务
            .subscribe(new Consumer<Object>() {
                @Override
                public void accept(Object o) throws Exception {
                    Toast.makeText(MainActivity.this, "开始下载", Toast.LENGTH_SHORT).show();
                }
            }, new Consumer<Throwable>() {
                @Override
                public void accept(Throwable throwable) throws Exception {
                    Log.w(TAG, throwable);
                    Toast.makeText(MainActivity.this, "添加任务失败", Toast.LENGTH_SHORT).show();
                }
            });
    //只是添加下载任务到队列中,因此不需要取消订阅,取消订阅也不会导致下载暂停

    接收下载事件和下载状态.

    //接收事件可以在任何地方接收,不管该任务是否开始下载均可接收.
    Disposable disposable =  mRxDownload.receiveDownloadStatus(url)
                    .subscribe(new Consumer<DownloadEvent>() {
                        @Override
                        public void accept(DownloadEvent event) throws Exception {
                            //当事件为Failed时, 才会有异常信息, 其余时候为null.
                            if (event.getFlag() == DownloadFlag.FAILED) { 
                                Throwable throwable = event.getError();
                                Log.w("Error", throwable);
                            }
                            mDownloadController.setEvent(event);
                            updateProgress(event);
                        }
                    });
    // 在Activity销毁时取消订阅,取消订阅即可取消接收事件,但并不会暂停下载.
    // 不管任务是否开始下载, 都能获取到该url对应的事件和状态.
    // 只会收到onNext事件,不会收到onError和onComplete事件,因此只需监听onNext即可.

    暂停下载

    rxDownload.pauseServiceDownload(url).subscribe();

    继续下载

    //再次调用下载方法并传入相同的url即可继续下载
    RxDownload.getInstance(this)
            .serviceDownload(url) 
            ...

    删除下载

    //暂停地址为url的下载并从数据库中删除记录,deleteFile为true会同时删除该url下载产生的所有文件
    rxDownload.deleteServiceDownload(url, deleteFile).subscribe();
    

    transferform形式

    .compose(rxDownload.<Object>transformService(url))
    

    获取下载记录

    获取数据库中所有的下载记录

    mRxDownload.getTotalDownloadRecords()
        .subscribe(new Action1<List<DownloadRecord>>() {
            @Override
            public void call(List<DownloadRecord> list) {
                mAdapter.addAll(list);
            }
        });

    获取下载文件

    获取下载的文件

    //利用url获取
    File[] files = rxDownload.getRealFiles(url);
    if (files != null) {
    	File file = files[0];
    }
    //利用saveName及savePath获取
    File file = rxDownload.getRealFiles(saveName,savePath)[0];
     
     
    github源码:https://github.com/ssseasonnn/RxDownload#rxdownload
    展开全文
  • C#Ftp上传下载 支持断点续传

    热门讨论 2013-07-11 09:28:18
    C# 完整代码开发,项目已经写好,上传下载支持断点续传
  • 该资源源于网络,支持断点续传,资源不错,与大家分享
  • 支持断点续传下载进度对话框,已测试过的,大家放心使用
  • vc++使用libcurl下载文件,支持断点续传,支持多文件下载;代码经测试,可以编译运行;使用url解析文件名;谢谢支持!
  • php支持断点续传的文件下载

    热门讨论 2013-06-30 22:53:28
    PHP下载类,支持断点续传。 HTTP断点续原理 Http头 Range、Content-Range() HTTP头中一般断点下载时才用到Range和Content-Range实体头, Range用户请求头中,指定第一个字节的位置和最后一个字节的位置,如...
  • HTTP断点续传,在网络异常时停止下载,网络恢复后自动下载
  • 这是使用xUtils做的文件下载功能,支持断点续传,在输入框中输入下载地址即可使用
  • 仿Flashget 多线程下载工具,支持断点续传

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 36,102
精华内容 14,440
关键字:

下载方式不支持断点续传