Running tests with Clang Address Sanitizer
A guide to using Clang's Address Sanitizer for memory error detection in iOS/macOS development, covering Xcode configuration and xcconfig files.
A guide to using Clang's Address Sanitizer for memory error detection in iOS/macOS development, covering Xcode configuration and xcconfig files.
Needle V0.0.4 released with iOS/OS X support, new security modules, and bug fixes ahead of OWASP AppSec USA 2016.
Exploring UI testing on iOS, comparing KIF and XCUI, and solving flaky tests with better synchronization techniques.
A guide to migrating Swift 2.3 code to Swift 3.0, focusing on replacing C-style for-loops and operators with modern Swift alternatives.
A guide on writing effective bug reports for software developers, with tips from an Apple-centric perspective.
A software testing expert shares insights and a template for effectively reporting defects in mobile applications across various platforms and conditions.
A guide to manually integrating Google Firebase into an iOS project without using CocoaPods, covering framework setup and linking in Xcode.
Introducing 'trainer', a tool to convert Xcode test results from plist to JUnit format for Jenkins, solving issues with xcpretty and xctool.
A guide to disabling NSLog in iOS/macOS apps to reduce console noise from third-party libraries, with code examples in Swift and Objective-C.
A guide to organizing Xcode projects with conventions for naming, folder structure, and managing multiple targets and platforms.
Explains best practices for checking iOS versions in apps, highlighting pitfalls of old methods and recommending modern, reliable APIs.
Investigates the thread safety of creating UIImage objects on background threads, analyzing crashes and Apple's documentation.
A quick guide on enabling app deletion on iOS devices by adjusting Restrictions in the Settings app.
Explores the future of apps that users interact with primarily through notifications, widgets, and Siri without ever launching the main app interface.
Explains how to use Swift's @available attribute to mark methods as unavailable, with examples for subclassing and legacy code.
Explores bridging Swift's modern features with a large legacy Objective-C/C++ codebase, discussing practical integration strategies.
PSPDFKit's journey to achieving fast and reliable UI testing for their iOS PDF SDK, covering strategies beyond Apple's XCUI framework.
PSPDFKit shares lessons on building cross-platform SDKs with native UI and shared C++ core for iOS, Android, and web.
Explains when to use strong vs. weak and optional vs. implicitly unwrapped IBOutlets in Swift/iOS development, with practical rules.
Analysis of the Apple vs FBI encryption case, arguing that longer passcodes can maintain iPhone security even if Apple loses.