Невозможно вызвать 3D Quick Action, когда приложение вызывается из фона.
Я не уверен, как реализовать эту функцию за пределами «приложения (_ application: UIApplication, executeActionFor shortcutItem:». Я безуспешно пытался создать экземпляр контроллера представления в «didFinishLaunchingWithOptions».
func application(_ application: UIApplication, performActionFor shortcutItem: UIApplicationShortcutItem, completionHandler: @escaping (Bool) -> Void) {
if shortcutItem.type == "AddPressed" {
let storyBoard = UIStoryboard(name: "Main", bundle: nil)
let addPressed = storyBoard.instantiateViewController(withIdentifier: "RoutineNameAndTimeViewController") as! RoutineNameAndTimeViewController
let rootViewController = UIApplication.shared.keyWindow?.rootViewController
rootViewController?.present(addPressed, animated: false, completion: { () -> Void in
completionHandler(true)
})
}
}
Когда я использую ярлык при первом запуске приложения, он успешно переводит меня на правильный контроллер представления. Каждый раз, когда приложение переходит в фоновый режим, ярлык не работает.