BigBrother0.4.0

BigBrother0.4.0

测试已测试
语言语言 SwiftSwift
许可协议 MIT
发布日期最后一个发布版本2016年4月
SPM支持 SPM

Marcelo Fabri维护。



BigBrother

BIG BROTHER 正在监视着你.

BigBrother 是一个为 iOS 制作的 Swift 库,它自动监视任何执行的请求,并设置 网络活动指示器

这主要是一个概念验证,由于 NSURLProtocol 的工作方式,存在一些限制。其中一些是:

它受到了 这篇评论 的启发,作者为 Mattt Thompson

它还基于 这篇教程,用于创建 NSURLProtocol,并列出 AFNetworkActivityIndicatorManager 的实现,它来自于 AFNetworking

用法

添加

添加到 NSURLConnectionNSURLSession.sharedSession()

BigBrother.addToSharedSession()

添加到自定义的 NSURLSessionConfiguration

var configuration = NSURLSessionConfiguration.defaultSessionConfiguration()

BigBrother.addToSessionConfiguration(configuration)

let session = NSURLSession(configuration: configuration)

移除

NSURLConnectionNSURLSession.sharedSession() 中移除

BigBrother.removeFromSharedSession()

从自定义的 NSURLSessionConfiguration 中移除

var configuration = NSURLSessionConfiguration.defaultSessionConfiguration()

BigBrother.removeFromSessionConfiguration(configuration)

let newSession = NSURLSession(configuration: configuration)

注意事项

在使用NSURLSessionConfiguration对象初始化会话对象之前,适当地配置它非常重要。会话对象会复制您提供的配置设置并使用这些设置来配置会话。一旦配置完毕,会话对象将忽略您对NSURLSessionConfiguration对象的任何更改。如果您需要修改传输策略,则必须更新会话配置对象并使用它来创建一个新的NSURLSession对象。

高级使用

BigBrother.URLProtocolNSURLProtocol 的子类,用于管理网络活动指示器,并且它是公开的。如果您想将其添加到 NSURLSessionConfiguration 或默认的 NSURLProtocol(由 NSURLConnectionNSURLSession.sharedSession() 使用),则可以这样做。

BigBrother.Manager 也是公开的,因此您可以直接管理网络活动指示器。

BigBrother.Manager.sharedInstance.incrementActivityCount()

// do something...

BigBrother.Manager.sharedInstance.decrementActivityCount()

安装

BigBrother 通过 CocoaPods 提供。要安装它,只需将以下行添加到您的Podfile中

pod 'BigBrother'

然后,使用 CocoaPods 0.36 或更高版本运行 pod install

单元测试

使用 XCTest 进行单元测试,测试文件位于 BigBrotherTests 文件夹中。

协作

  • 如果您发现了一个错误,请打开问题。
  • 如果您有一个功能请求,请打开问题。
  • 如果您想贡献力量,请提交拉取请求。我们非常欢迎!

联系方式

Marcelo Fabri

许可

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