同问 当程序运行在前台的时候,处理推送消息 ?
2014-03-14 14:59
375 查看
当程序在前台的时候,大家是怎么处理远程消息的?
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
if (application.applicationState == UIApplicationStateActive) {
UILocalNotification *notification=[[UILocalNotification alloc] init];
if (notification!=nil) {
NSDate *date = [NSDate dateWithTimeIntervalSinceNow:10];
notification.fireDate=date ;
notification.timeZone=[NSTimeZone defaultTimeZone];
notification.alertBody= [[userInfo objectForKey:@"aps"] objectForKey:@"alert"];
notification.soundName = UILocalNotificationDefaultSoundName;
notification.userInfo = userInfo;
[[UIApplication sharedApplication] scheduleLocalNotification:notification];
[self playSound];
}
} else {
NSInteger badge = [UIApplication sharedApplication].applicationIconBadgeNumber;
if(badge > 0)
{
badge--;
[UIApplication sharedApplication].applicationIconBadgeNumber = badge;
}
// [UIApplication sharedApplication].applicationIconBadgeNumber = 0;
[self readInfoNetwork:[userInfo objectForKey:@"bId"]];
[self readUserInfo:userInfo];
}
}
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification
{
if (application.applicationState != UIApplicationStateActive) {
NSDictionary *userInfo = notification.userInfo;
NSInteger badge = [UIApplication sharedApplication].applicationIconBadgeNumber;
if(badge > 0)
{
badge--;
[UIApplication sharedApplication].applicationIconBadgeNumber = badge;
}
// [UIApplication sharedApplication].applicationIconBadgeNumber = 0;
[self readInfoNetwork:[userInfo objectForKey:@"bId"]];
[self readUserInfo:userInfo];
[application cancelLocalNotification:notification];
}
}
我这样写还是不会有横幅出来,而且在读取本地的逻辑也有问题
相关文章推荐
- ios远程推送消息时运行在前台怎么处理
- iOS 程序未启动和在前台、后台接收到推送消息的处理方法
- iOS 远程推送消息时运行在前台怎么处理
- ios远程推送消息时运行在前台怎么处理
- 引用 运行asp.net程序时候,编译器错误消息: CS0016: 未能写入输出文件“c:\WINDOWS\Microsoft.NET\Fra
- ios程序后台运行时,当有消息推送过来,如何修改程序角标上是数字
- 引用 运行asp.net程序时候,编译器错误消息: CS0016: 未能写入输出文件“c:\WINDOWS\Microsoft.NET\Fra
- 小程序客服消息推送公众号文章 引导关注公众号的操作方法
- 程序运行后占用CPU高的处理流程
- 使用C#和MSMQ开发消息处理程序
- (优化处理)详细剖析Android Traceview效率检视工具,分析程序运行速度!
- IOS、Andriod、WP8 三大系统后台运行及消息推送机制
- 浅析Microsoft .net PetShop程序中的购物车和订单处理模块(Profile技术,异步MSMQ消息)
- 1.3 运行j2ee 程序的时候,tomcat服务器 和jvm 各自的责任?
- (转)【Android游戏开发之十】(优化处理)详细剖析Android Traceview 效率检视工具!分析程序运行速度!并讲解两种创建SDcard方式!
- 开发网页程序的时候,JS经常报错该如何处理?
- 在真机运行程序的时候提示“Could not launch 'app name'”
- 单线程程序处理消息的方式!
- 微信小程序开发:设置消息推送
- 批处理 同时运行多个程序、关闭多个程序