Automatically manages the iOS network activity indicator visibility for Alamofire requests with configurable delay timers.
AlamofireNetworkActivityIndicator is a Swift library that automatically manages the visibility of the iOS network activity indicator based on Alamofire network requests. It solves the problem of manually showing and hiding the indicator, providing a smoother user experience by intelligently handling delays to prevent flickering. It integrates seamlessly with Alamofire's notification system to track active requests.
iOS developers using Alamofire for networking who need to provide visual feedback for network activity in their apps. It's particularly useful for those who want a simple, automatic solution without writing boilerplate indicator management code.
Developers choose this library because it offers a hassle-free, automatic way to handle the network activity indicator with Alamofire, including configurable delay timers to optimize UX. Its separation from Alamofire core ensures compatibility with App Extensions while providing a dedicated, well-tested solution.
Controls the visibility of the network activity indicator on iOS using Alamofire.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Uses Alamofire notifications to automatically update the indicator based on active request counts, eliminating manual show/hide code as described in the Notifications section.
Includes configurable start and completion delays to prevent UI flicker, with defaults optimized for user experience, highlighted in the Delay Timers section.
Separated from Alamofire core to maintain compatibility with iOS App Extensions, allowing use in restricted environments without violating App Store guidelines, per the FAQ.
Simple setup by enabling the shared manager instance, supported by multiple installation methods including CocoaPods, Carthage, and Swift Package Manager.
Requires Alamofire 5.0+ as a dependency, making it unsuitable for projects using other networking libraries or those wanting to avoid additional frameworks.
Limited to controlling the standard iOS network activity indicator in the status bar; does not support custom UI components or other platforms like macOS or watchOS.
Relies on a single shared instance, which may not handle complex scenarios with multiple independent network managers effectively, as implied by the usage documentation.