推送通知的使用細節:app
1,發出推送通知時,若是程序正運行在前臺,那麼推送通知就不會被呈現出來。對象
2,點擊推送通知後,默認會自動打開發出推送通知的app。遊戲
3,無論app打開仍是關閉,推送通知都能如期發出。進程
本地推送通知的使用場景:ci
經常使用來定時提醒用戶完成一些任務,好比清理垃圾,記帳,買衣服,看電影,玩遊戲。開發
//1,建立本地通知對象it
UILocalNotification *ln = [[UILocalNotification alloc]init];io
//2,設置通知屬性test
ln.soundName = @"buyao.wav"//音效文件名後臺
ln.alertBody = @"重大新聞:XXXX";//通知內容
ln.fireDate = [NSDate dateWithTimeIntervalSinceNow:5];//通知第一次發出的時間(5秒後發出)
ln.timeZone=[NSTimeZone defaultTimeZone];//設置時區(跟隨手機的時區)
ln.applicationIconBadgeNumber = 5 //設置app圖標數字
ln.repeatInterval = NSCalendarUnitMinute;//設置重複發出通知的時間間隔
ln.alertAction = @"查看新聞吧";
ln.userInfo = @{@"icon":@"test.png",@"title":@"重大新聞"}
//當即發送
[[UIApplication shareApplication]presentLocalNotificationNow:ln];
//3,調度通知(啓動任務)
[[UIApplication shareApplication] scheduleLocalNotification:ln];
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions;
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification;
//從在跳到下一個控制器以前,會執行前一個控制器的方法。seque 表明那根線
-(void)prepareForSeque:(UIStoryboardSeque*)seque sender:(UILocalNotification*)note;
//判斷在前臺仍是在後臺;
appliciation.aplliciationState 有一個枚舉裏有三個屬性 第一個是前臺 後面是後臺