http组合任务

任务组的下载和普通任务的下载基本上差不多,区别在于,任务组下载不需要对每一个子任务设置保存路径,但是需要设置任务组保存文件夹路径,所有子任务都保存在该文件夹下

组合任务控制

  • 任务状态获取 如果你希望获取任务状态,那么你需要使用组合任务注解获取任务状态信息

  • 下载\恢复下载

    Aria.download(this)
        .loadGroup(urls)     //设置一主任务,参数为List<String>
        .setDirPath(groupDirPath)    //设置任务组的文件夹路径
        /*
         * 任务组总任务大小,任务组是一个抽象的概念,没有真实的数据实体,任务组的大小是Aria动态获取子任务大小相加而得到的,
         * 如果你知道当前任务组总大小,你也可以调用该方法给任务组设置大小
         *
         * 为了更好的用户体验,建议直接设置任务组文件大小
         */
        .setFileSize(fileSize) 
        .start();   //启动下载
    
  • 暂停

    Aria.download(this).loadGroup(urls).pause();
    
  • 取消下载

    Aria.download(this).loadGroup(urls).cancel();
    
  • 设置头部参数 在任务组中,设置的头部参数将用于所有的子任务

     Aria.download(this).loadGroup(urls).addHeader("key", "value").start();
    

    需要注意的是:如果你没有调用start()stop()等操作方法,那么你需要调用save()才能将头部数据保存进数据库。 如下所示:

    Aria.download(this).loadGroup(urls).addHeader("key", "value").save();
    
  • 设置扩展字段 有的时候,你可能希望在下载的时候存放一些自己的数据,这时你可以调用该接口将数据保存下来(如果你数据比较多,或者数据比较复杂,你可以先把数据转换为JSON,然后再将其存到Aria的下载实体中)

    Aria.download(this).loadGroup(urls).setExtendField("扩展字段").start();
    

    需要注意的是:如果你没有调用start()stop()等操作方法,那么你需要调用save()才能将头部数据保存进数据库。 如下所示:

    Aria.download(this).loadGroup(urls).setExtendField("扩展字段").save();
    

组合任务子任务操作

  • 子任务注解

  • 启动组合任务中的一个子任务

       Aria.download(getContext()).loadGroup(mUrls).getSubTaskManager().startSubTask(mChildEntity.getUrl());
    
  • 停止组合任务中的一个子任务

      Aria.download(getContext()).loadGroup(mUrls).getSubTaskManager().stopSubTask(mChildEntity.getUrl());
    
Copyright © 2018 laoyuyu. | 蜀ICP备17031160号.            更新时间: 2019-07-17

results matching ""

    No results matching ""