美文网首页
点击通知栏通知的处理

点击通知栏通知的处理

作者: c048e8b8e3d7 | 来源:发表于2017-01-11 15:38 被阅读26次

一 程序未启动

- (BOOL)application:(UIApplication *)application
 didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    //...
    NSDictionary* remoteNotification = [launchOptions objectForKey:
            UIApplicationLaunchOptionsRemoteNotificationKey];
    BOOL lanuchFromNotification = remoteNotification != nil;
    if (lanuchFromNotification) {
        //增加点击通知的处理
    }
    //...
    return YES;
}

二 程序已启动但是处于后台

- (void)application:(UIApplication *)application
 didReceiveRemoteNotification:(NSDictionary *)userInfo
{
    //增加点击通知的处理
}

三 程序处于前台

项目中用到的是个推推送,个推提供了一个方法可以在程序运行的时候捕捉到通知

- (void)GeTuiSdkDidReceivePayloadData:(NSData *)payloadData andTaskId:(NSString *)taskId andMsgId:(NSString *)msgId andOffLine:(BOOL)offLine fromGtAppId:(NSString *)appId
{
    if (!offLine) {
        //程序处于前台接收到推送
    }
}

四 相关技巧

1 删除通知栏某个APP的所有通知

//需要#import <UserNotifications/UserNotifications.h>
[[UNUserNotificationCenter currentNotificationCenter]removeAllDeliveredNotifications];

相关文章

网友评论

      本文标题:点击通知栏通知的处理

      本文链接:https://www.haomeiwen.com/subject/njdrbttx.html