WeTransfer-Swift-SDK 1.0

WeTransfer-Swift-SDK 1.0

Pim Coumans维护。



  • 作者:
  • Pim Coumans

WeTransfer-Swift-SDK

WeTransfer 公共 API 的 Swift SDK

Build Status License Carthage compatible CocoaPods Compatible Platform

有关 API 密钥和其他信息,请访问我们的开发者门户

特性

  • 通过单个方法调用创建并上传传输
  • 为流程中的每个单独步骤提供不同的方法
  • 取消和恢复上传

要求

  • iOS 9.0+ / macOS 10.10+
  • Xcode 9.4+
  • Swift 4.1+

安装

Carthage

Carthage 是一个去中心化的依赖管理器,它为您构建依赖并提供二进制框架。

您可以使用以下命令通过 Homebrew 安装 Carthage:

$ brew update
$ brew install carthage

要将 WeTransfer 集成到您的 Xcode 项目中,请使用 Carthage,并在您的 Cartfile 中指定它:

github "WeTransfer/WeTransfer-Swift-SDK" ~> 1.0

运行 carthage update 以构建框架,并将构建的 WeTransfer.framework 拖放到您的 Xcode 项目中。

Swift Package Manager

Swift Package Manager 是一个用于自动分发 Swift 代码的工具,并且集成到 swift 编译器中。

一旦您设置了 Swift 包,将 WeTransfer SDK 作为依赖添加到非常简单,只需将其添加到 Package.swiftdependencies 值中即可。

Swift 3

dependencies: [
    .Package(url: "https://github.com/WeTransfer/WeTransfer-Swift-SDK.git", majorVersion: 1)
]

Swift 4

dependencies: [
    .package(url: "https://github.com/Alamofire/WeTransfer-Swift-SDK.git", from: "1.0   ")
]

注意:当前运行 swift test 不可行,因为 Swift 包不能在其测试目标中包含资源。

Cocoapods

CocoaPods 是 Cocoa 项目的依赖管理器。

要使用 CocoaPods 将 WeTransfer Swift SDK 集成到您的 Xcode 项目中,请在您的 Podfile 中指定它:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
use_frameworks!

target '<Your Target Name>' do
    pod 'WeTransfer-Swift-SDK', '>= 1.0'
end

然后,运行以下命令:

$ pod install

用法

在 SDK 使用 WeTransfer API 之前,它需要使用 API 密钥进行认证。您可以在 开发者门户 创建 API 密钥。

  1. 配置客户端 使用API密钥创建配置
let configuration = WeTransfer.Configuration(apiKey: "YOUR_API_KEY")`
WeTransfer.configure(with: configuration)
  1. 以新传输上传文件 通过一个方法调用即可创建传输并上传文件,WeTransfer.uploadTransfer。在SDK中,文件由File对象表示,但这个便捷方法需要一个指向设备上文件的URL数组的指针。在stateChanged封闭体中,您可以获得有关上传进度或其他信息(如是否完成或失败)的更新
let files = [...]
WeTransfer.uploadTransfer(named: "Transfer Name", containing: files) { state in
    switch state {
    case .created(let transfer):
        print("Transfer created")
    case .uploading(let progress):
        print("Transfer uploading")
    case .completed(let transfer):
        print("Upload completed")
    case .failed(let error):
        XCTFail("Transfer failed: \(error.localizedDescription)")
    }
}

示例应用

WeTransfer Swift SDK Sample Application

该项目包含一个示例应用程序,它展示了该SDK的可能用例。它允许向传输中添加照片和视频,并显示整个传输的上传进度,之后可以共享URL。

交流

  • 如果发现了一个错误,请在问题报告中打开。
  • 如果您有功能请求,请在问题报告中提出。
  • 如果您想贡献,请提交一个pull请求

许可

WeTransfer Swift SDK在MIT许可下可用。有关更多信息,请参阅LICENSE文件。

行为准则

所有与WeTransfer Swift SDK项目代码库、问题跟踪器、聊天室和邮件列表互动的人都应遵守行为准则