我正在做一个项目,其中推送通知功能是关键特征之一。
当我在应用程序中时它工作正常,我收到通知并处理该通知。
但问题是当我在后台并收到通知时,我在应用程序图标上看到徽章
当我单击该图标时,我的应用程序正在启动,但是didReceiveRemoteNotification
未调用方法,因此我无法处理该通知。
另一个问题是有时它会显示通知消息device notification list
有时却没有。
当我通过单击通知列表项进入我的应用程序时didReceiveRemoteNotification
打电话,我能够成功处理通知。
我在中编写以下代码didFinishLaunchingWithOptions:(NSDictionary *)launchOptions method
NSDictionary* remoteNotif = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];
if (remoteNotif != nil)
{
NSLog(@"didFinishLaunchingWithOptions\nNotification recieved:\n%@",remoteNotif);
notificationData=[[NSDictionary alloc]initWithDictionary:remoteNotif];
[notif saveNotification:remoteNotif];
}
帮我解决这个问题。
提前致谢。
你正在做的事情完成启动方法做在didReceiveRemoteNotification以及。
当你从背景中走出来时,完成启动不会被调用。
- (void)application:(UIApplication*)application didReceiveRemoteNotification:
(NSDictionary*)userInfo
{
UIApplicationState state = [application applicationState];
if (state == UIApplicationStateActive)
{
//What you want to do when your app was active and it got push notification
}
else if (state == UIApplicationStateInactive)
{
//What you want to do when your app was in background and it got push notification
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)