本地推送实例

来源:互联网 发布:java正则表达式分组 编辑:程序博客网 时间:2024/06/16 18:34

//定制一个本地PUSH

-(void)CutomPush

{

    NSDate *data = [NSDatedateWithTimeIntervalSinceNow:3];

    //创建一个本地推送

    UILocalNotification *local =[[UILocalNotificationalloc]init];

    if (local) {

        //设置推送的时间

        local.fireDate = data;

        //设置推送的时区

        local.timeZone = [NSTimeZonedefaultTimeZone];//本地时区

        //重复间隔

        local.repeatInterval =NSCalendarUnitMonth;

//        NSCalendarUnitEra                = kCFCalendarUnitEra,一个世纪

//     

//     

//        NSCalendarUnitMonth              = kCFCalendarUnitMonth,一个月

//    

//        NSCalendarUnitDay                = kCFCalendarUnitDay,一天

//     

//        NSCalendarUnitHour               = kCFCalendarUnitHour,一小时

//     

//        NSCalendarUnitMinute             = kCFCalendarUnitMinute,一分钟

//     

//        NSCalendarUnitSecond             = kCFCalendarUnitSecond,不重复

//       

//        NSCalendarUnitWeekday            = kCFCalendarUnitWeekday,

//       

//        NSCalendarUnitWeekdayOrdinal     = kCFCalendarUnitWeekdayOrdinal

        //推送的声音

        local.soundName =UILocalNotificationDefaultSoundName;//无声音

        //内容

        local.alertBody = @"川哥推送";

        //icon图标上显示的数字

        local.applicationIconBadgeNumber =1;

        //设置的userinfo方便之后需要撤销是使用

        NSDictionary *dic = [NSDictionarydictionaryWithObject:@"name"forKey:@"key"];

        local.userInfo = dic;

        //获取app这个实例

        UIApplication *app = [UIApplicationsharedApplication];

       //iOS8以上要进行注册

        if ([app respondsToSelector:@selector(registerUserNotificationSettings:)]) {

            UIUserNotificationType typer =UIUserNotificationTypeSound|UIUserNotificationTypeBadge|UIUserNotificationTypeAlert;

            UIUserNotificationSettings *set =[UIUserNotificationSettingssettingsForTypes:typercategories:nil];

            [app registerUserNotificationSettings:set];

            

            

        }

        //添加推送

        [app scheduleLocalNotification:local];

    }

}

//在application中设置接收到推送后的内容

-(void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification

{

    NSString *notMess = [notification.userInfoobjectForKey:@"key"];

    UIAlertView *alert = [[UIAlertViewalloc]initWithTitle:@"本地通知(前台)"

                                                    message:notMess

                                                   delegate:nil

                                          cancelButtonTitle:@"OK"

                                          otherButtonTitles:nil];

    [alert show];

    

}


0 0
原创粉丝点击