iOS闹钟实现

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

{

}

一样的处理方法。

上一篇:Dell EMC:超融合是大势所趋 但SAN还不会立即终结


下一篇:7个影响数据分析的数据建模错误