简单总结一下远程推送消息的相应情况
1. 当程序处于关闭状态收到推送消息时,点击图标会调用- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 这个方法,那么消息给通过launchOptions这个参数获取到。
2. 当程序处于前台工作时,这时候若收到消息推送,会调用- (void)application:(UIApplication*)application
didReceiveRemoteNotification:(NSDictionary *)userInfo这个方法
3. 当程序处于后台运行时,这时候若收到消息推送,如果点击消息或者点击消息图标时,也会调用- (void)application:(UIApplication*)application
didReceiveRemoteNotification:(NSDictionary *)userInfo这个方法
4. 当程序处于后台运行时,这时候若收到消息推送,如果点击桌面应用图标,则不会调用didFinishLaunchingWithOptions和didReceiveRemoteNotification方法,所以无法获取消息
{
"aps":{
"alert":"Test APNS Notification",
"sound":"default",
"badge":10
}
}
alert就是标题,sound代表推送的声音,badge代表应用图标右上角的数目
相对于远程推送,本地推送的功能可以做的更强大。除了以上方法外,发送的格式也随意,只要你能解析就成。还可以存储消息到本地,各种处理啊。