Ios 在应用程序关闭时收到的通知中检索deeplink
我最近发现,当我的应用程序关闭时(我说的是完全关闭,不是在后台),我打开的任何推送都会启动应用程序,但就是这样,深度链接永远不会被考虑在内 经过调查,我意识到当应用程序关闭后,您通过推送打开它时,不会调用application:didReceiveMemoteNotification。由开发人员在application:didFinishLaunchingWithOptions中检查launchOptions字典,并查找UIApplicationLaunchOptions远程通知键的值,这意味着该应用程序是通过推送打开的 以下是以这种方式打开我的应用程序时启动选项的说明:Ios 在应用程序关闭时收到的通知中检索deeplink,ios,push,deep-linking,remote-notifications,Ios,Push,Deep Linking,Remote Notifications,我最近发现,当我的应用程序关闭时(我说的是完全关闭,不是在后台),我打开的任何推送都会启动应用程序,但就是这样,深度链接永远不会被考虑在内 经过调查,我意识到当应用程序关闭后,您通过推送打开它时,不会调用application:didReceiveMemoteNotification。由开发人员在application:didFinishLaunchingWithOptions中检查launchOptions字典,并查找UIApplicationLaunchOptions远程通知键的值,这意味着
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中是否存在UIApplicationAunchActionsRemoteNotificationKey的值,然后获取键“azme”的值和键“au”的值,这似乎是一种完全错误的方法,然后像平常一样打开URL
我找不到更好/更传统的方法来做这件事,有吗
谢谢你的帮助 在
应用程序中捕获推送通知是正确的方法:didfishlaunchingwithoptions
。您可以将PN处理代码提取到外部方法,并在使用PN启动应用程序时调用它,以及PN是否在应用程序启动期间到达。