本地通知前要先注册通知:
if ([[UIApplication sharedApplication] respondsToSelector:@selector(registerForRemoteNotifications)])
{
UIUserNotificationType types = UIUserNotificationTypeBadge | UIUserNotificationTypeSound | UIUserNotificationTypeAlert;
UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:types
categories:nil];
[[UIApplication sharedApplication] registerUserNotificationSettings:settings];
[[UIApplication sharedApplication] registerForRemoteNotifications];
}
else
{
//在ios8之前的方法:
UIRemoteNotificationType types = UIRemoteNotificationTypeAlert | UIRemoteNotificationTypeSound | UIRemoteNotificationTypeBadge;
[[UIApplication sharedApplication] registerForRemoteNotificationTypes:types];
}
// 初始化本地通知对象
UILocalNotification*notification = [[UILocalNotificationalloc]
init]; if(notification) { // 设置通知的提醒时间 NSDate*currentDate = [NSDatedate]; notification.timeZone = [NSTimeZonedefaultTimeZone];
// 使用本地时区 notification.fireDate = [currentDate dateByAddingTimeInterval:5.0]; // 设置重复间隔 notification.repeatInterval = kCFCalendarUnitDay; // 设置提醒的文字内容 notification.alertBody = @"Wake up, man"; notification.alertAction =NSLocalizedString(@"起床了",nil); // 通知提示音 使用默认的 notification.soundName=UILocalNotificationDefaultSoundName; // 设置应用程序右上角的提醒个数 notification.applicationIconBadgeNumber++; // 将通知添加到系统中 [[UIApplicationsharedApplication] scheduleLocalNotification:notification]; }//t推送接收- (void)application:(UIApplication*)application didReceiveLocalNotification:(UILocalNotification*)notification{ NSLog(@"____++++++");}//t推送接收- (void)application:(UIApplication*)application didReceiveRemoteNotification:(NSDictionary*)userInfo
fetchCompletionHandler:(void(^)(UIBackgroundFetchResult))completionHandler {}
本文详细介绍了如何在iOS应用中实现本地通知与远程通知的注册与发送,包括设置通知类型、创建本地通知对象、配置提醒时间和内容,以及接收推送通知的方法。

925

被折叠的 条评论
为什么被折叠?



