iOS push的问题

做推送的时候,通过点击通知栏进入app后,会调用

-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo{}

方法,在这个方法做业务逻辑处理。但是有个问题是,通知栏里面的推送并不会清除,加上以下代码就ok了


    [[UIApplicationsharedApplication] setApplicationIconBadgeNumber: 0];

    

    [[UIApplicationsharedApplication] cancelAllLocalNotifications];



2014年03月19日重写:原来push没有这么简单的,根据程序状态也是分很多情况的。

第一种情况:程序未启动(也不在后台)。点击通知栏里的消息会触发以下方法

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

可在这个方法里处理通知,代码如下:

 NSDictionary* pushNotification = [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey];

如果用户点击桌面app的图标打开程序,只会触发这个方法

- (void)applicationDidBecomeActive:(UIApplication *)application

这时候是没办法得到推送的通知的。

第二种情况:程序运行中(包括在后台),点击通知栏里的通知,会触发以下方法

-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo{

可在这个方法做相应的处理。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值