A Swift library providing UIDevice extensions to identify specific iOS device models, screen sizes, and families.
UIDeviceComplete is a Swift library that extends Apple's UIDevice class to provide missing functionality for iOS device identification. It allows developers to detect specific device models, retrieve screen sizes in inches, and determine device families, solving the problem of limited native device information.
iOS developers who need to tailor app behavior or UI based on specific device hardware, such as those building adaptive interfaces or analytics features.
Developers choose UIDeviceComplete because it offers a lightweight, focused solution for device detection without the overhead of larger libraries, and it integrates seamlessly with existing UIDevice APIs through a dedicated namespace to avoid conflicts.
UIDevice extensions that fill in the missing pieces.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides specific enum-based identifiers for devices like iPhone X and iPad Pro, which the native UIDevice API lacks, as demonstrated in the README's switch statement examples.
Returns physical screen size as a Double value via UIDevice.current.dc.screenSize.sizeInches, enabling precise UI adjustments based on actual device dimensions.
Uses the .dc property to extend UIDevice without naming conflicts, preserving native methods and simplifying integration, as highlighted in the 'Use' section.
Offers only essential extensions for device identification without bloat, aligning with the project's philosophy of simplicity and minimal complexity.
Requires regular updates to support new iOS devices; if not maintained, it can quickly become outdated and inaccurate for newer models, as hinted by the 'Dont see a feature you need?' note.
Focuses solely on device detection without providing broader UI components or analytics tools, which may necessitate additional libraries for comprehensive solutions.
As Apple improves native APIs in future iOS updates, the need for this library might diminish, risking dependency on a tool that could become deprecated.