← Înapoi la Urmăritori

Cel mai recent articol

Ultima verificare

Urmăritori 0 urmăritori
Articole: 107
  1. Calling Super at Runtime in Swift

    Implementing dynamic super calls in Swift through runtime manipulation, assembly language, and ARM64 register management for InterposeKit.

  2. How to speed up iOS build times by 40% using zld, a drop-in replacement for Apple's linker, with practical integration tips for real projects.

  3. Solving the mysterious LLDB 'Couldn't IRGen expression' error by investigating Swift module path serialization and discovering that removing dSYM bundles fixes debugging issues.

  4. Updating macOS on a Hackintosh

    A practical guide to safely updating macOS on a Hackintosh by first updating OpenCore bootloader and essential kexts before upgrading the system.

  5. Introducing InterposeKit, a modern Swift library for elegant method swizzling that leverages Swift 5.2's callAsFunction for type-safe Objective-C method interception.

  6. Deep-dive investigation and fix for a Mac Catalyst text input crash caused by a race condition in Apple's RemoteTextInput framework.

  7. Jailbreaking for iOS Developers

    A comprehensive guide to iOS jailbreaking for developers, covering legal security research tools, debugging capabilities, and practical applications beyond app piracy.

  8. Network Kernel Core Dump

    Step-by-step instructions from Apple for capturing macOS kernel core dumps over a network connection between two Macs.

  9. How to macOS Core Dump

    A technical guide to deciphering Apple's cryptic boot arguments and setting up macOS kernel core dumps to debug persistent kernel panics.

  10. Investigation into mysterious kernel panics reveals Apple repair centers left my MacBook with undocumented security-weakening boot arguments.

  11. A four-year saga with the problematic LG UltraFine 5K display and the surprising discovery that plugging it into the wrong MacBook side causes performance issues.

  12. Let's Try This Again

    After five years away from personal blogging, I'm returning to share technical stories that don't fit on Twitter or corporate blogs.

  13. How We Work at PSPDFKit

    An inside look at PSPDFKit's development processes, from proposal-based feature planning to monorepo management and release automation.

  14. Swizzling in Swift

    A deep dive into safe method swizzling techniques in Swift, covering common pitfalls and the correct way to implement dynamic super calls.

  15. Practical tips and advice for making the most of your WWDC experience, from packing essentials to navigating labs and networking events.

  16. Discusses the challenges and limitations faced when implementing drag and drop functionality for PDF editing on iOS 11.

  17. Explores Apple's Marzipan technology for running UIKit apps on macOS and how to experiment with it before official third-party support.

  18. How to Use Slack and Not Go Crazy

    Best practices for using Slack effectively in a distributed team without getting overwhelmed by notifications and channels.

  19. Advanced debugging techniques for tracking memory management issues, retain/release cycles, and hard-to-find bugs in iOS development.

  20. Binary Frameworks in Swift

    Explores Swift's ABI stability and the challenges of shipping binary frameworks before Swift 5.

  21. Even Swiftier Objective-C

    Explores new Objective-C features and improvements introduced at WWDC 2017 that make the language more Swift-like.

  22. Argues why UITableView should be deprecated in favor of UICollectionView for better flexibility and modern iOS development.

  23. Guide to using Clang Address Sanitizer for finding memory bugs, race conditions, and other runtime issues in iOS and Android development.

  24. Comprehensive guide to effective UI testing on iOS using KIF framework without busy waiting and performance optimization techniques.

  25. Hiring a distributed team

    Lessons learned about hiring and building a successful distributed remote team at PSPDFKit over six years.

  26. Writing Good Bug Reports

    Essential guide to writing effective bug reports that help developers understand, reproduce, and fix issues quickly and efficiently.

  27. Analysis of Apple's real-time collaboration features announced in 2016 and their implications for developers.

  28. A fast method for converting Xcode test results to JUnit format for better CI integration and test reporting.

  29. Efficient iOS Version Checking

    Best practices for efficiently checking iOS versions in code while supporting multiple deployment targets.

  30. Deep dive into UIImage thread safety issues and how to properly handle images in concurrent environments.

  31. Swifty Objective-C

    Modern Objective-C language features that make it more Swift-like, including nullability annotations, generics, and new syntax improvements.

  32. Techniques for dramatically speeding up UI test execution in Xcode using parallelization and optimization strategies.

  33. How PSPDFKit shares a common C++ codebase across iOS, Android, and Web platforms while maintaining native user experiences.

  34. Surprises with Swift Extensions

    Common pitfalls and surprising behaviors when creating Swift extensions on Objective-C classes, with solutions for proper method naming.

  35. Using ccache for Fun and Profit

    Complete guide to using ccache to dramatically speed up C/C++/Objective-C build times for large iOS projects and CI systems.

  36. Navigate the complications of subclassing UITableViewController after iOS 8.3 introduced designated initializers that break proper initialization patterns.

  37. Researching ResearchKit

    Analyze Apple's first major open-source project ResearchKit to discover interesting implementation details and practical iOS development solutions.

  38. Diagnose and solve an iOS 8 regression where unwanted rotation occurs in apps using multiple windows despite explicit configuration.

  39. UIKit Debug Mode

    Unlock hidden UIKit debugging features by bypassing Apple's InternalBuild checks to access secret flags for logging touches, gestures, and animations.

  40. Backport iOS 8's convenient NSString containsString: method to iOS 7 using runtime patching that won't conflict with Apple's implementation.

  41. Learn why traditional method swizzling breaks UIKit's touch forwarding and discover a better approach that preserves _cmd integrity.

  42. Hacking with Aspects

    Explore how Apple detects popover presentation in UIImagePickerController and learn to bypass the restriction using my Aspects library.

  43. Fixing UITextView On iOS 7

    Fix the severe scrolling and content positioning bugs in iOS 7's UITextView with PSPDFTextView, a drop-in replacement.

  44. Fixing What Apple Doesn't

    Fix the misaligned label in iOS 7's printer controller by swizzling UIPrinterSearchingView's layoutSubviews method.

  45. Learn how to inspect view hierarchies of third-party iOS apps using a jailbroken device and debugging tools like Reveal for design insights.

  46. Fix the broken animation, frame positioning, and status bar issues in UISearchDisplayController on iOS 7 with this comprehensive solution.

  47. Smart Proxy Delegation

    Eliminate delegate boilerplate code in Objective-C using NSProxy to automatically handle respondsToSelector checks and method forwarding.

  48. Add keyboard shortcuts to UIAlertView and UIActionSheet for faster simulator testing by intercepting keyboard events with Enter and Escape keys.

  49. Learn the best approach to center content in UIScrollView using contentInset instead of layoutSubviews or setContentOffset for better zooming behavior.

  50. UIAppearance for Custom Views

    Learn how to properly implement UIAppearance in custom views, including important gotchas about setter tracking and initialization patterns.