- UILocalNotification *notification=[[UILocalNotification alloc] init];
- if (notification!=nil)
- {
- NSDate *now=[NSDate new];
- //notification.fireDate=[now addTimeInterval:period];
- notification.fireDate = [now dateByAddingTimeInterval:period];
- NSLog(@"%d",period);
- notification.timeZone=[NSTimeZone defaultTimeZone];
- notification.soundName = @"ping.caf";
- //notification.alertBody=@"TIME!";
- notification.alertBody = [NSString stringWithFormat:@"@%时间到了!",nameStr];
- NSDictionary* info = [NSDictionary dictionaryWithObject:uniqueCodeStr forKey:CODE];
- notification.userInfo = info;
- [[UIApplication sharedApplication] scheduleLocalNotification:notification];
- }
- 设置的时间到了以后,会自动在桌面弹出一个提示框,点显示后,就可以启动软件。然后在
- - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
- {
- UILocalNotification *localNotif = [launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey];
- if (localNotif)
- {
- NSLog(@"Recieved Notification %@",localNotif);
- NSDictionary* infoDic = localNotif.userInfo;
- NSLog(@"userInfo description=%@",[infoDic description]);
- NSString* codeStr = [infoDic objectForKey:CODE];
- }
- }里,对lanchOptions进行处理,找到它里面的信息,就可以拿到设置时的需要处理的东西,就可以继续操作了。
- 如果此时你的客户端 软件仍在打开,则会调用
- - (void)application:(UIApplication *)app didReceiveLocalNotification:(UILocalNotification *)notif
- {
- }
- 一样的处理方法。
原文地址: http://www.devdiv.com/forum.php?mod=viewthread&tid=69786&fromuid=36506