日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

IOS - 本地消息推送

發布時間:2024/6/18 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 IOS - 本地消息推送 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.


第一步:創建本地推送
// 創建一個本地推送
UILocalNotification *notification = [[[UILocalNotification alloc] init] autorelease];
//設置10秒之后
NSDate *pushDate = [NSDate dateWithTimeIntervalSinceNow:10];

if (notification != nil) {
??? // 設置推送時間
??? notification.fireDate = pushDate;
??? // 設置時區
??? notification.timeZone = [NSTimeZone defaultTimeZone];
??? // 設置重復間隔
??? notification.repeatInterval = kCFCalendarUnitDay;
??? // 推送聲音
??? notification.soundName = UILocalNotificationDefaultSoundName;
??? // 推送內容
??? notification.alertBody = @"推送內容";
??? //顯示在icon上的紅色圈中的數子
??? notification.applicationIconBadgeNumber = 1;
??? //設置userinfo 方便在之后需要撤銷的時候使用
??? 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];
??? // 圖標上的數字減1
??? application.applicationIconBadgeNumber -= 1;
}

第三步:解除本地推送
// 獲得 UIApplication
UIApplication *app = [UIApplication sharedApplication];
//獲取本地推送數組
NSArray *localArray = [app scheduledLocalNotifications];
//聲明本地通知對象
UILocalNotification *localNotification;
if (localArray) {
??? for (UILocalNotification *noti in localArray) {
??????? NSDictionary *dict = noti.userInfo;
??????? if (dict) {
??????????? NSString *inKey = [dict objectForKey:@"key"];
??????????? if ([inKey isEqualToString:@"對應的key值"]) {
??????????????? if (localNotification){
??????????????????? [localNotification release];
??????????????????? localNotification = nil;
??????????????? }
??????????????? localNotification = [noti retain];
??????????????? break;
??????????? }
??????? }
??? }
???
??? //判斷是否找到已經存在的相同key的推送
??? if (!localNotification) {
??????? //不存在初始化
??????? localNotification = [[UILocalNotification alloc] init];
??? }
???
??? if (localNotification) {
??????? //不推送 取消推送
??????? [app cancelLocalNotification:localNotification];
??????? [localNotification release];
??????? return;
??? }
}


轉載于:https://www.cnblogs.com/mcj-coding/p/3565439.html

總結

以上是生活随笔為你收集整理的IOS - 本地消息推送的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。