2

我最近发现,当我的应用程序关闭时(我说的是它完全关闭,而不是在后台),我打开的任何带有深度链接的推送都会启动应用程序,但就是这样,深度链接永远不会被考虑在内帐户。

经过调查,我意识到当应用程序关闭并通过推送打开它时,应用程序:didReceiveRemoteNotification 不会被调用。由开发人员在 application:didFinishLaunchingWithOptions 中检查 launchOptions 字典,并查找 UIApplicationLaunchOptionsRemoteNotificationKey 的值,这意味着应用程序是通过推送打开的。

以下是以这种方式打开我的应用程序时对 launchOptions 的描述:

Printing description of launchOptions:
{
    UIApplicationLaunchOptionsRemoteNotificationKey =     {
        aps =         {
            alert =             {
                "action-loc-key" = "_push-title_";
                body = "_push-budy_";
            };
            "content-available" = 1;
        };
        azme =         {
            au = "_deeplink-url_";
            ci = "a-1";
            dt = b;
            pid = 5130;
        };
    };
}

所以,不知道任何其他方式,我必须在launchOptions中检查UIApplicationLaunchOptionsRemoteNotificationKey的值是否存在,然后获取键“azme”的值,以及键“au”的值,这似乎完全错误的方法,并像往常一样打开 URL。

我找不到更好/更传统的方法来做到这一点,有吗?

谢谢您的帮助 !

4

0 回答 0