Digger 0.0.5

Digger 0.0.5

测试测试
Lang语言 SwiftSwift
许可证 MIT
发布最后发布2017年11月
SwiftSwift 版本4.0
SPM支持 SPM

cornerant 维护。



Digger 0.0.5

  • 作者
  • cornerant

Version
Carthage compatible
Version

中文说明

Digger 是一个轻量级的下载框架,只需一行代码即可完成文件下载任务。

基于 URLSession,纯 Swift 语言实现,支持链式语法调用,实时下载进度,实时下载速度,断点续传。

用户强制关闭应用,例如通过滑出应用。
Digger 仍然可以恢复下载任务。

功能

  • 大文件下载
  • 多线程下载
  • 线程安全
  • 断点下载
  • 可控并发的并发控制

要求"

  • iOS 8.0+
  • Xcode 9.0+
  • Swift 4.0+

安装

CocoaPods

添加到您的 Podfile

pod 'Digger'

Carthage

添加到您的 Cartfile

github "cornerAnt/Digger"

使用

### 基本用法
在沙盒 Caches 下的 Digger 目录中下载文件

   let url = "http://example.com/digger.mp4"
   Digger.download(url)

根据需要选择不同的回调

        
  Digger.download(url)
        .progress(nil)
        .speed(nil)
        .completion(nil)
   let url = "http://example.com/digger.mp4"

        Digger.download(url)
            .progress({ (progresss) in
                print(progresss.fractionCompleted)

            })
            .speed({ (speed) in
                print(speed)
            })
            .completion { (result) in
                
                switch result {
                case .success(let url):
                    print(url)
                    
                case .failure(let error):
                    print(error)
                    
                }
                
        }
}

自行配置

/// Start the task at once,default is true

DiggerManager.shared.startDownloadImmediately = false

/// maxConcurrentTasksCount,deault is 3

DiggerManager.shared.maxConcurrentTasksCount = 4

///  request timeout,deault is 100 

DiggerManager.shared.timeout = 150

/// allowsCellularAccess,deault is true

DiggerManager.shared.allowsCellularAccess = false

/// loglevel,deault is high
/*
***************DiggerLog****************
file   : ExampleController.swift
method : viewDidLoad()
line   : [31]:
info   : digger log

*/
// If you want to close,set the level to be .none

DiggerManager.shared.logLevel = .none




// MARK:-  DiggerCache

/// In the sandbox cactes directory, custom your cache directory

DiggerCache.cachesDirectory = "Directory"

/// Delete all downloaded files

DiggerCache.cleanDownloadFiles()

/// Delete all temporary download files

DiggerCache.cleanDownloadTempFiles()

/// Get the system's available memory size

_ = DiggerCache.systemFreeSize()

/// Get the size of the downloaded file

_ = DiggerCache.downloadedFilesSize()

/// Get the path to all downloaded files
_ = DiggerCache.pathsOfDownloadedfiles
}

贡献

  1. 分叉
  2. 将更改提交到您分支下的分叉
  3. 推送您的代码并发起拉取请求

许可证

Digger 版权所有 (c) 2017 cornerAnt,作为开源软件发布,许可协议见所附MIT 许可证