在 ios 開發中,經常會使用到通知的功能。而通知又分為本地通知和遠端通知。遠端通知的實現有很多中,可以利用第三方實現。本文主要介紹本地通知的使用,遠端通知會在後面給大家介紹。要實現本地通知的功能很簡單,只需要乙個類就夠了。這個類就是uilocalnotification。通過它就能輕輕鬆鬆實現本地通知的功能。下面直接上**
/**
* 設定本地通知
*/- (void)settingnotication
// 建立本地推送物件
uilocalnotification *notification = [[uilocalnotification alloc] init];
// 設定通知觸發時間
notification.firedate = [nsdate datewithtimeintervalsincenow:5];
// 設定時區(為空則使用預設時區,該屬性值決定了firedate的時間)
notification.timezone = [nstimezone defaulttimezone];
// 設定推送重複間隔時間(這裡設定了一分鐘推送一次通知)
notification.repeatinterval = nscalendarunitminute;
// 設定通知聲音(可以指定乙個聲音檔名,包括副檔名。聲音檔案時長不能超過30秒,超過30秒系統會使用預設的聲音)
notification.soundname = uilocalnotificationdefaultsoundname;
// 設定通知內容(該屬性值為 nil,則通知觸發了也不會有任何提示)
notification.alertbody = @"是時候吃早餐了";
// 設定應用右上角顯示的文字
// 該屬性在 ios8下沒有效果
notification.alertlaunchimage = @"images";
// 在鎖屏情況下,該屬性替換「slide to unlock」 中「unlock」
notification.alertaction = @"去吃早餐";
// 傳遞資料
notification.userinfo = [nsdictionary dictionarywithobjectsandkeys:@"測試通知001",@"notificationid", nil];
// 將通知登記到系統notification處理佇列中(這一步非常重要,沒有這一步,建立出來的通知可以說廢的)
}
執行效果圖
圖一:沒有鎖屏的情況下
圖二:鎖屏情況下
如何處理uilocalnotification?
只需處理物件攜帶的userinfo來處理響應的動作。
// 處理接收到的本地通知
uialertview *alert = [[uialertview alloc] initwithtitle:@"接收到本地提醒p" message:notification.alertbody
delegate:nil cancelbuttontitle:@"確定" otherbuttontitles:nil];
[alert show];
//在這裡你就可以通過notification的useinfo做自己想做的事情
// ..........................
// 取消某個特定的本地通知
nsstring *notiid = noti.userinfo[@"notificationid"];
nsstring *receivenotiid = notification.userinfo[@"notificationid"];
if ([notiid isequaltostring:receivenotiid])
}}總結
iOS推送(一) 本地推送
以ios8.0和ios10.0兩個版本來建立乙個本地推送 void localpush else 推送建立完畢後,那麼我們便要考慮收到推送後會執行什麼樣的操作,這裡主要介紹處理接收到推送的地方。首先我們要先註冊推送通知。8.0和10.0註冊推送還是很不一樣的。8.0系統註冊推送 if uidevic...
歸納筆記024 本地通知
本地通知是乙個uilocalnotification物件,有如下屬性 1 firedate 設定本地通知將在什麼時間觸發。2 repeatinterval 設定本地通知重 送的時間間隔。3 alertbody 設定本地通知的訊息體。4 alertaction 設定當裝置處理鎖屏狀態時,顯示通知在警告...
Git學習筆記(一) 本地Git
如果你是初次使用git,就要把自己的使用者名稱和郵箱告訴git,git據此區分提交 的作者。git config global user.name wen ke git config global user.email 306674698 qq.com 檢視使用者名稱和郵箱 gitconfig gl...