本地推送 简单代码演示

 1 第一步:创建本地推送

 2 // 创建一个本地推送

 3 UILocalNotification *notification = [[[UILocalNotification alloc] init] autorelease];

 4 //设置10秒之后

 5 NSDate *pushDate = [NSDate dateWithTimeIntervalSinceNow:10];

 6 if (notification != nil) {

 7     // 设置推送时间

 8     notification.fireDate = pushDate;

 9     // 设置时区

10     notification.timeZone = [NSTimeZone defaultTimeZone];

11     // 设置重复间隔

12     notification.repeatInterval = kCFCalendarUnitDay;

13     // 推送声音

14     notification.soundName = UILocalNotificationDefaultSoundName;

15     // 推送内容

16     notification.alertBody = @"推送内容";

17     //显示在icon上的红色圈中的数子

18     notification.applicationIconBadgeNumber = 1;

19     //设置userinfo 方便在之后需要撤销的时候使用

20     NSDictionary *info = [NSDictionary dictionaryWithObject:@"name"forKey:@"key"];

21     notification.userInfo = info;

22     //添加推送到UIApplication       

23     UIApplication *app = [UIApplication sharedApplication];

24     [app scheduleLocalNotification:notification]; 

25    

26 }

27 

28 第二步:接收本地推送

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

30     UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"iWeibo" message:notification.alertBody delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil];

31     [alert show];

32     // 图标上的数字减1

33     1.        application.applicationIconBadgeNumber -= 1;

34 }

35 

36 第三步:解除本地推送

37 // 获得 UIApplication

38 UIApplication *app = [UIApplication sharedApplication];

39 //获取本地推送数组

40 NSArray *localArray = [app scheduledLocalNotifications];

41 //声明本地通知对象

42 UILocalNotification *localNotification;

43 if (localArray) {

44     for (UILocalNotification *noti in localArray) {

45         NSDictionary *dict = noti.userInfo;

46         if (dict) {

47             NSString *inKey = [dict objectForKey:@"key"];

48             if ([inKey isEqualToString:@"对应的key值"]) {

49                 if (localNotification){

50                     [localNotification release];

51                     localNotification = nil;

52                 }

53                 localNotification = [noti retain];

54                 break;

55             }

56         }

57     }

58    

59     //判断是否找到已经存在的相同key的推送

60     if (!localNotification) {

61         //不存在初始化

62         localNotification = [[UILocalNotification alloc] init];

63     }

64    

65     if (localNotification) {

66         //不推送 取消推送

67         [app cancelLocalNotification:localNotification];

68         [localNotification release];

69         return;

70     }

71 }

72 

73 流程大概是这样的

74 1.生成CertificateSigningRequest.certSigningRequest文件

75 2.将CertificateSigningRequest.certSigningRequest上传进developer,导出.cer文件

76 3.利用CSR导出P12文件

77 4.需要准备下设备token值(无空格)

78 5.使用OpenSSL合成服务器所使用的推送证书

 

你可能感兴趣的:(代码)