我最近发现,当我的应用程序关闭时(我说它完全关闭,而不是在后台),我打开的任何带有深层链接的推送都会启动应用程序,但是那个'它,深层链接从未被考虑在内。
经过调查,我意识到当应用程序关闭并通过推送打开它时,应用程序:didReceiveRemoteNotification不会被调用。在应用程序中检查dev: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"的值以及键的值& #34; au",这似乎是一种完全错误的方式,并像往常一样打开URL。
我找不到更好/更传统的做法,有吗?
感谢您的帮助!