Dave Gallagher Dave Gallagher - 7 months ago 56
Swift Question

How to handle launchOptions: [NSObject: AnyObject]? in Swift?

In a Swift AppDelegate class, you get the following method:

func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
// ...code...
return true
}


The
launchOptions: [NSObject: AnyObject]?
parameter is an optional. In Objective-C this is passed as an
NSDictionary
. I'm looking to extract the
UIApplicationLaunchOptionsRemoteNotificationKey
from it. Here's how it's done in Objective-C:

NSDictionary *remoteNotification = launchOptions[UIApplicationLaunchOptionsRemoteNotificationKey];

if (remoteNotification)
{
// ...do stuff...
}


How would you go about doing that in Swift?

Answer

In Swift, you'd do it like this:

if let remoteNotification = launchOptions?[UIApplicationLaunchOptionsRemoteNotificationKey] as? NSDictionary {
    // ...do stuff...
}
Comments