从主屏幕启动应用程序无法获取远程推送有效负载?但是从通知中心启动是有效的。
起初,应用程序没有运行。收到远程推送通知后,用户不会立即启动带有通知的应用程序。然后用户点击通知中心的通知启动应用程序,我可以从以下位置获取推送有效负载launchOptions
:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
NSDictionary* userInfo = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
if(userInfo) {
//do some works with push payload.
}
}
但是,如果用户通过点击主屏幕上的应用程序图标来启动应用程序,我无法从中获取推送有效负载launchOptions
,尽管application:didFinishLaunchingWithOptions:
被调用。
再次:
- 应用程序未运行。
- 用户在收到推送通知时不启动应用程序。
- 稍后,从通知中心启动应用程序并从 launchOptions 获取推送负载。
- 从主屏幕启动应用程序无法从 launchOptions 获取推送负载。
这是SDK中的错误吗?如何通过从主屏幕启动应用程序来获取推送有效负载?
谢谢!