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
{

}
一樣的處理方法。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM