我有一个小部件通过NSURL和extensionContext调用其相应的应用程序来激活应用程序中的特定操作.
在AppDelegate的应用程序中:openURL:options:方法我有:
func application(app: UIApplication,openURL url: NSURL,options: [String : AnyObject]) -> Bool { if let path = url.path{ if path.containsString("action"){ NSNotificationCenter.defaultCenter().postNotificationName(MyViewController.purchasmyActionKey,object: nil) } } return true }
当应用程序打开并且MyViewController处于活动状态时,操作将完美执行.但是,如果我在应用程序中的另一个视图控制器上或应用程序已关闭,则不会执行该操作.
有人能让我走上正轨吗?
注意:我的主控制器是一个带有各种子视图控制器的UITabBarController.一些是UINavigationControllers(包含网格控制器),另一个是ListViewController.