Um die perfekten Screenshots im iOS Simulator zu erstellen, möchte man gerne die Statusbar ein wenig manipulieren. Das geht mit SimulatorStatusMagic ganz einfach.

Fastlane Integration

Da ich fastlane nutze, um meine Screenshots automatisiert zu erstellen, habe ich einen Weg gefunden das in mein Projekt einzubinden, so dass es nur aktiv ist, wenn ich fastlane snapshot nutze.

Im Podfile das Paket hinzufügen:

pod 'SimulatorStatusMagic'

In AppDelegate.swift den Code so markieren, dass er nur eingebaut wird, wenn SCREENSHOT als Präprozessor Variable definiert ist:

#if SCREENSHOTS
import SimulatorStatusMagic
#endif

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {      
    #if SCREENSHOTS
    SDStatusBarManager.sharedInstance().enableOverrides()
    #endif
}

Im Snapfile anschließend noch dafür sorgen, dass bei fastlane snapshot auch SCREENSHOTS als Variable gesetzt wird beim Bauen:

# this enables SDStatusBarManager to generate a nice and clean statusbar for all screenshots
custom_args "GCC_PREPROCESSOR_DEFINITIONS='SCREENSHOTS'"

Weitere Artikel