Skip to content

๐ŸŒ Use Publishers to observe Internet connectivity changes using OpenCombine.

License

Notifications You must be signed in to change notification settings

rwbutler/OpenConnectivity

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

18 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

OpenConnectivity

License Twitter

OpenConnectivity allows Connectivity to be used with OpenCombine such that users can subscribe to changes in Internet connectivity using Publishers on platforms where the Combine framework is unavailable.

Connectivity is a framework providing a reliable measure of whether Internet connectivity is available. It provides Combine Publishers which allow the subscriber to be notified on changes in Internet connectivity state. Apple's Combine however is unavailable on some platforms notably prior to iOS 13 in which case OpenCombine exists to fill the gap. This package allows you to subscribe to changes in Internet connectivity on platforms where Combine is unavailable by substituting Combine for OpenCombine.

To learn more about how to use OpenConnectivity, check out the blog post, or make use of the table of contents below:

Features

  • Detect captive portals when a device joins a network.
  • Detect when connected to a router that has no Internet access.
  • Be notified of changes in Internet connectivity.
  • Polling connectivity checks may be performed where a constant network connection is required (optional).

Blog Post

For more background, take a look at the blog post on Detecting Internet Connectivity using OpenCombine.

Usage

For example usage in an iOS app see this gist.

Author

Ross Butler

License

OpenConnectivity is available under the MIT license. See the LICENSE file for more info.

Additional Software

Controls

AnimatedGradientView
AnimatedGradientView

Frameworks

  • Cheats - Retro cheat codes for modern iOS apps.
  • Connectivity - Improves on Reachability for determining Internet connectivity in your iOS application.
  • FeatureFlags - Allows developers to configure feature flags, run multiple A/B or MVT tests using a bundled / remotely-hosted JSON configuration file.
  • FlexibleRowHeightGridLayout - A UICollectionView grid layout designed to support Dynamic Type by allowing the height of each row to size to fit content.
  • Hyperconnectivity - Modern replacement for Apple's Reachability written in Swift and made elegant using Combine. An offshoot of the Connectivity framework.
  • Skylark - Fully Swift BDD testing framework for writing Cucumber scenarios using Gherkin syntax.
  • TailorSwift - A collection of useful Swift Core Library / Foundation framework extensions.
  • TypographyKit - Consistent & accessible visual styling on iOS with Dynamic Type support.
  • Updates - Automatically detects app updates and gently prompts users to update.
Cheats Connectivity FeatureFlags Hyperconnectivity Skylark TypographyKit Updates
Cheats Connectivity FeatureFlags Hyperconnectivity Skylark TypographyKit Updates

Tools

  • Clear DerivedData - Utility to quickly clear your DerivedData directory simply by typing cdd from the Terminal.
  • Config Validator - Config Validator validates & uploads your configuration files and cache clears your CDN as part of your CI process.
  • IPA Uploader - Uploads your apps to TestFlight & App Store.
  • Palette - Makes your TypographyKit color palette available in Xcode Interface Builder.
Config Validator IPA Uploader Palette
Config Validator IPA Uploader Palette

About

๐ŸŒ Use Publishers to observe Internet connectivity changes using OpenCombine.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages