An iOS library that detects actual internet connectivity using a hybrid approach of ping, HTTP, and local network status.
RealReachability is an iOS library that detects actual internet connectivity, not just local network interface status. It solves the problem where standard reachability APIs (like SCNetworkReachability) can't guarantee real internet access by using a hybrid approach of ping, HTTP probes, and local connection monitoring. The library ensures apps respond accurately to true network availability changes.
iOS developers building apps that require reliable internet connectivity detection, such as those with offline modes, media streaming, or real-time synchronization features.
Developers choose RealReachability because it provides verified internet connectivity status, unlike basic reachability libraries that only check local interfaces. Its hybrid detection, FSM-based state management, and dual Swift/Objective-C support make it uniquely reliable for production apps.
We need to observe the REAL reachability of network. That's what RealReachability do.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Combines NWPathMonitor, HTTP HEAD, and ICMP ping to verify actual internet access, not just local interface status, as emphasized in the README's philosophy of reliability over simplicity.
Offers both Swift with async/await for iOS 13+ and Objective-C with notifications for iOS 12+, catering to diverse codebases and easing migration from older projects.
Allows parallel, HTTP-only, or ICMP-only modes for flexibility, enabling developers to tailor connectivity checks based on app needs and network constraints.
Includes VPN status detection and cellular network type identification (e.g., 4G, 5G), improving reachability logic in varied network conditions as highlighted in the features.
The library is no longer maintained and has been migrated to RealReachability2, meaning potential bugs, security issues, and lack of updates for newer iOS versions.
The hybrid approach and FSM implementation add setup and performance overhead compared to basic reachability solutions, which might be overkill for simple apps.
Relies on configurable external hosts for ping checks (default is www.apple.com), which can fail if hosts are unreachable or blocked, impacting reliability.