NetworkReachability



NetworkReachability 是 Apple SystemConfiguration 网络连接性 (Network Reachability) API 的替代品。由于这些 API 最初是用 C 语言编写的,因此它们相当陈旧,并且在 Swift 中使用起来很麻烦。在 2018 年,Apple 添加了 Network 框架,该框架引入了 NWPathMonitor 类。这个 API 解决了一些 SCNetworkReachability 的问题,但仍然难以集成到许多常用的应用程序模式中。NetworkReachability 将这两个 API 封装在易于使用的 Swift 包装器中,这些包装器具有类似的接口和功能,大多数 iOS 开发人员都会感到熟悉。使用 NetworkReachability,您只需几行代码即可轻松地将连接性观察集成到应用程序的管道中。

NetworkReachability 支持同步连接性查询,以及通过以下机制进行的持续异步连接性观察

NetworkReachability 通过一个可选的附加包支持 RxSwift 绑定:NetworkReachabilityRxSwift。这个可选包的存在是为了让您可以安全地依赖 NetworkReachability,而无需在不需要 RxSwift 的情况下也依赖它。 NetworkReachability 本身没有任何非 Apple 依赖项。

安装 (Installation)

NetworkReachability 目前仅通过 Swift Package Manager 分发。

要将 NetworkReachability 作为依赖项添加到现有的 Swift 包,请将以下代码行添加到 Package.swift 文件的 dependencies 参数中

dependencies: [
    .package(url: "https://github.com/vsanthanam/NetworkReachability.git", from: "1.0.0")
]

要将 NetworkReachability 作为依赖项添加到 Xcode 项目

未来可能会添加其他分发机制,如 CocoaPods 或 Carthage。

用法和文档 (Usage & Documentation)

NetworkReachability 的文档使用 DocC 构建,并作为 DocC 存档包含在存储库中。最新版本托管在 GitHub Pages 上,并可在此处 访问

Documentation

其他安装说明可在 Swift Package Index 上找到

许可证 (License)

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