我的应用目前可以从另一个应用打开。从其他应用程序传递的所有信息都在 application(application: UIApplication, openURL url...
中读取,应用程序状态将根据需要保留。
首次启动 appDelegate
时首先打开 didFinishLaunchingWithOptions
,但是如果用户双击主页按钮并通过向上滑动 applicationWillTerminate
终止应用程序> 被调用,应用被终止。
当我的应用程序被杀死后从另一个应用程序启动时,该应用程序首先调用 didFinishLaunchingWithOptions
然后调用 application(application: UIApplication, openURL url...
我如何确保应用程序知道从 didFinishLaunchingWithOptions
方法中传递的 url?有没有办法事先确定而不是在 application(application: UIApplication, openURL url...
?
最佳答案
是的,该 URL 应该在 launchOptions
字典中可用如果该应用程序是通过另一个应用程序的 URL 启动的:
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
let url = launchOptions?[UIApplicationLaunchOptionsKey.url] as? NSURL
}
如果您对 launchOptions 字典可能包含的所有内容感兴趣(它链接到您可以使用的所有键),请检查 application(_:didFinishLaunchingWithOptions:)
文档:
https://developer.apple.com/documentation/uikit/uiapplicationdelegate/1622921-application
关于ios - 从另一个应用程序打开时,在 applicationWillTerminate 之后以首选状态打开应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51950267/