iOS本地推送簡單實(shí)現(xiàn)代碼
本文為大家分解介紹了iOS本地推送代碼的三步驟,供大家參考,具體內(nèi)容如下
第一步:創(chuàng)建本地推送
// 創(chuàng)建一個(gè)本地推送 UILocalNotification *notification = [[[UILocalNotification alloc] init] autorelease]; //設(shè)置10秒之后 NSDate *pushDate = [NSDate dateWithTimeIntervalSinceNow:10]; if (notification != nil) { // 設(shè)置推送時(shí)間 notification.fireDate = pushDate; // 設(shè)置時(shí)區(qū) notification.timeZone = [NSTimeZone defaultTimeZone]; // 設(shè)置重復(fù)間隔 notification.repeatInterval = kCFCalendarUnitDay; // 推送聲音 notification.soundName = UILocalNotificationDefaultSoundName; // 推送內(nèi)容 notification.alertBody = @"推送內(nèi)容"; //顯示在icon上的紅色圈中的數(shù)子 notification.applicationIconBadgeNumber = 1; //設(shè)置userinfo 方便在之后需要撤銷的時(shí)候使用 NSDictionary *info = [NSDictionary dictionaryWithObject:@"name"forKey:@"key"]; notification.userInfo = info; //添加推送到UIApplication UIApplication *app = [UIApplication sharedApplication]; [app scheduleLocalNotification:notification]; }
第二步:接收本地推送
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification*)notification{ UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"iWeibo" message:notification.alertBody delegate:nil cancelButtonTitle:@"確定" otherButtonTitles:nil]; [alert show]; // 圖標(biāo)上的數(shù)字減1 application.applicationIconBadgeNumber -= 1; }
第三步:解除本地推送
// 獲得 UIApplication UIApplication *app = [UIApplication sharedApplication]; //獲取本地推送數(shù)組 NSArray *localArray = [app scheduledLocalNotifications]; //聲明本地通知對(duì)象 UILocalNotification *localNotification; if (localArray) { for (UILocalNotification *noti in localArray) { NSDictionary *dict = noti.userInfo; if (dict) { NSString *inKey = [dict objectForKey:@"key"]; if ([inKey isEqualToString:@"對(duì)應(yīng)的key值"]) { if (localNotification){ [localNotification release]; localNotification = nil; } localNotification = [noti retain]; break; } } } //判斷是否找到已經(jīng)存在的相同key的推送 if (!localNotification) { //不存在初始化 localNotification = [[UILocalNotification alloc] init]; } if (localNotification) { //不推送 取消推送 [app cancelLocalNotification:localNotification]; [localNotification release]; return; } }
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- iOS消息推送原理及具體實(shí)現(xiàn)代碼
- iOS開發(fā)之(APNS)遠(yuǎn)程推送實(shí)現(xiàn)代碼 附證書與真機(jī)調(diào)試
- iPhone/iPad開發(fā)通過LocalNotification實(shí)現(xiàn)iOS定時(shí)本地推送功能
- iOS10添加本地推送(Local Notification)實(shí)例
- iOS推送之本地通知UILocalNotification
- 使用iOS推送時(shí)警告錯(cuò)誤的解決方法
- iOS10 推送最新特性研究
- iOS仿支付寶芝麻信用分?jǐn)?shù)儀表盤動(dòng)畫效果
- iOS逆向工程使用LLDB的USB連接調(diào)試第三方App
- IOS 仿時(shí)光網(wǎng)選票UI實(shí)例代碼
相關(guān)文章
IOS中UITextView或UITextField字?jǐn)?shù)限制的實(shí)現(xiàn)
這篇文章主要介紹了IOS中UITextView或UITextField字?jǐn)?shù)限制的實(shí)現(xiàn)的相關(guān)資料,希望通過本文能幫助到大家實(shí)現(xiàn)這樣的功能,需要的朋友可以參考下2017-10-10iOS開發(fā)中使app獲取本機(jī)通訊錄的實(shí)現(xiàn)代碼實(shí)例
這篇文章主要介紹了iOS開發(fā)中使app獲取本機(jī)通訊錄的實(shí)現(xiàn)代碼實(shí)例,主要用到了AddressBook.framework和AddressBookUI.framework,代碼基于傳統(tǒng)的Objective-C,需要的朋友可以參考下2016-01-01IOS 實(shí)現(xiàn)3D 浮動(dòng)效果動(dòng)畫
這篇文章主要介紹了IOS 實(shí)現(xiàn)3D 浮動(dòng)效果動(dòng)畫的相關(guān)資料,需要的朋友可以參考下2016-09-09詳解iOS開發(fā)中的轉(zhuǎn)場(chǎng)動(dòng)畫和組動(dòng)畫以及UIView封裝動(dòng)畫
這篇文章主要介紹了iOS開發(fā)中的轉(zhuǎn)場(chǎng)動(dòng)畫和組動(dòng)畫以及UIView封裝動(dòng)畫,主要用到了CAAnimation類和UIView類,需要的朋友可以參考下2015-11-11UITextView實(shí)現(xiàn)只允許鏈接交互不允許選擇圖片的方法
這篇文章主要介紹了UITextView實(shí)現(xiàn)只允許鏈接交互不允許選擇圖片的方法,文中介紹的非常詳細(xì),相信對(duì)大家具有一定的參考價(jià)值,需要的朋友們下面來一起看看吧。2017-03-03iOS UICollectionView刷新時(shí)閃屏的解決方法
本篇文章主要介紹了iOS UICollectionView刷新時(shí)閃屏的解決方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-11-11iOS的CoreAnimation開發(fā)框架中的Layer層動(dòng)畫制作解析
在iOS中UIView層的屬性會(huì)映射到CoreAnimation框架的CALayer,這里我們來看一下iOS的CoreAnimation開發(fā)框架中的Layer層動(dòng)畫制作解析,需要的朋友可以參考下2016-07-07