/////////////////////
- (void)applicationWillResignActive:(UIApplication *)application
{
// app从前台到后台
}
- (void)applicationDidEnterBackground:(UIApplication *)application
{
// app 已经进入后台, 如果消息没读, 可以在这里设置BadgeNumber, app图标上的数字
[[UIApplication sharedApplication] setApplicationIconBadgeNumber:_badgeNum];
[getUserDefaults setObject:@(_badgeNum) forKey:@"badgeNum"];
}
- (void)applicationDidBecomeActive:(UIApplication *)application
{
// app 回到前台, 如果用户通过点击app图标进入而不是,通过点击通知栏进入, 在后台没有消息缓存的情况下是取不到推送消息的,但是这里可以通过这种方法, 判断是否收到过推送消息
if (application.applicationIconBadgeNumber>0) { //badge number 不为0,说明程序有那个圈圈图标
NSLog(@"我可能收到了推送");
//这里进行有关处理
[[NSNotificationCenter defaultCenter]postNotificationName:@"newMessage" object:nil];
[application setApplicationIconBadgeNumber:0]; //将图标清零。
}
}
介绍了很多appdelegate的方法
http://www.cnblogs.com/pengyingh/articles/2342014.html