RxSwiftAutoRetry 是对 RxSwift(一个著名的 Reactive Swift 框架)的扩展。它允许用户在指数时间后重试 observable。它还提供了一种简单的方法来随机化延迟时间。
要运行示例项目,请克隆仓库,然后首先从根项目目录运行 pod install
。
要运行测试,请首先从根项目目录运行 carthage update
。
CocoaPods 是一个依赖管理工具,可以简化第三方库的添加。要安装它,请将以下行添加到您的 Podfile
pod 'RxSwiftAutoRetry'
然后,您需要运行以下命令将框架安装到您的项目中
pod install
Carthage 是一个去中心化的依赖管理工具,允许您以编译格式保存依赖项。
github 'SwingDev/RxSwiftAutoRetry'
carthage update
RxSwift.framework
和 RxSwiftAutoRetry.framework
。/usr/local/bin/carthage copy-frameworks
$(SRCROOT)/Carthage/Build/<platform>/RxSwift.framework
$(SRCROOT)/Carthage/Build/<platform>/RxSwiftAutoRetry.framework
Swift Package Manager 是一种用于管理 Swift 代码分发并将其集成到编译器中的工具。
它仅适用于 macOS。
将依赖项添加到您的 Package.swift
文件
dependencies: [
.package(url: "https://github.com/SwingDev/RxSwiftAutoRetry.git", from: "0.9"))
]
然后,运行以下命令
pod install
请参阅 Example 文件夹中的示例项目。
retryExponentially
是 RxSwift 框架的扩展方法(如果需要使用此方法,请导入 RxSwift 库。)
通常,使用此方法如下所示
observable.retryExponentially()
此方法为参数提供了一组默认值,因此可以自定义其行为
observable.retryExponentially(2, with: 0.9...1.1, scheduler: scheduler) { error in
//Add code
}
3
0.9...1.1
ConcurrentDispatchQueueScheduler(queue: DispatchQueue.global())
nil
RxSwiftAutoRetry 在 MIT 许可证下可用。 有关更多信息,请参见 LICENSE 文件。