首页 > 解决方案 > 从应用商店启动应用时 UIApplicationLaunchOptionsURLKey 的值是多少

问题描述

我想跟踪应用程序启动源。
我在 application:didFinishLaunchingWithOptions: 中检查 UIApplicationLaunchOptionsURLKey 以了解应用程序的启动方式
,但我不知道从应用程序商店启动应用程序时 UIApplicationLaunchOptionsURLKey 的值。有谁知道吗?</p>

我如何跟踪启动源:

func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        if let launchOptions = launchOptions {
            if let url = launchOptions[UIApplicationLaunchOptionsKey.url] {
                //wake from other app
                //the problem is i don't know the value of "url"
             }
        } else {
            //wake from desktop
        }
}

标签: iosiphone

解决方案


我认为您将需要查看 sourceApplication 键:

https://developer.apple.com/documentation/uikit/uiapplication/launchoptionskey/1623064-sourceapplication

从我自己的应用程序(通过自定义协议)启动我的另一个应用程序的实验中,我看到该sourceApplication值包含bundle identifier源应用程序的值。

因此,对于您的情况,我希望它是:

com.apple.AppStore

请参阅:苹果在 iOS 中的默认应用程序的捆绑标识符是什么?

但我不确定这一点。

评论:依赖这类东西可能不好,因为操作系统可能会改变以使这种假设无效。但我真的不知道你的用例。


推荐阅读