IOS本地通知
发送通知:
UILocalNotification *newNotification = [[UILocalNotification alloc] init];
if (newNotification) {
//时区
newNotification.timeZone=[NSTimeZone defaultTimeZone];
//推送事件---10秒后
newNotification.fireDate=[[NSDate date] dateByAddingTimeInterval:10];
//推送内容
newNotification.alertBody = @"信号报警";
//应用右上角红色图标数字
newNotification.applicationIconBadgeNumber = 1;
注:
//1:格式一定要支持播放,常用的格式caf
//2:音频播放时间不能大于30秒
//3:在Resource里要找到音频文件,倒入时最好能点项目名称右键add导入
newNotification.soundName = @"jingBao2.caf";
//设置按钮
newNotification.alertAction = @"关闭";
//判断重复与否
newNotification.repeatInterval = NSWeekCalendarUnit;
//存入的字典,用于传入数据,区分多个通知
NSMutableDictionary *dicUserInfo = [[NSMutableDictionary alloc] init];
[dicUserInfo setValue:@"" forKey:@"clockID"];
float floatHeng = userLocation.location.coordinate.latitude;
float floatShu = userLocation.location.coordinate.longitude;
[dicUserInfo setValue:[NSString stringWithFormat:@"%f",strX] forKey:@"heng"];
[dicUserInfo setValue:[NSString stringWithFormat:@"%f",strY] forKey:@"shu"];
newNotification.userInfo = [NSDictionary dictionaryWithObject:dicUserInfo forKey:@"dictionary"];
[dicUserInfo release];
[[UIApplication sharedApplication] scheduleLocalNotification:newNotification];
}
NSLog(@"Post new localNotification:%@", newNotification);
[newNotification release];
[pool release];
取消通知:
通知完一定要取消,IOS最多允许最近本地通知数量是64个,超过限制的本地通知将被忽略。
1:删除应用所有通知
[[UIApplication sharedApplication] cancelAllLocalNotifications];
2:根据字典删除个别通知
key:发送通知时候传入的字典值来判断是哪个推送
for (int i=0; i<[myArray count]; i++) {
UILocalNotification *myUILocalNotification=[myArray objectAtIndex:i];
if ([[[myUILocalNotification userInfo] objectForKey:@"key"] intValue]==@"字典值") {
[[UIApplication sharedApplication] cancelLocalNotification:myUILocalNotification];
}
}
通知执行完调用的方法 AppDelegate.m类里面
//推送完 执行的事件
-(void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification{
//notification是发送通知时传入的字典信息
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"标题" message:notification.alertBody delegate:nil cancelButtonTitle:@"确定" otherButtonTitles:nil];
[alert show];
[alert release];
}
最后还有一个地方:执行通知一定要退出应用才能收到通知。
IOS本地通知的更多相关文章
- IOS 本地通知 UILocalNotification
IOS 本地通知 UILocalNotification [本文章第四部分中的代码逻辑来自网上的借鉴,并非我自己原创] 大概一个月前,我开始跟着做IOS项目了.学习C++,了解Objective-C, ...
- iOS 本地通知 操作
iOS 本地通知 操作 1:配置通知:然后退出程序: UILocalNotification *localNotif = [[UILocalNotification alloc] init]; loc ...
- IOS本地通知:UILocalNotification使用记录
第一次接触IOS的本地通知的使用,看到别人写的一个比较详细的记录,自己整理过来,方便以后再次使用和拓展: 1.创建一个本地通知,添加到系统: // 初始化本地通知对象 UILocalNotificat ...
- xamarin.ios 本地通知推送
由于ios10版本以后UILocalNotification被标为弃用了,所以要添加新的本地通知推送功能,下面提供一些代码参考. 一.先在AppDelegate.cs上注册本地通知推送功能. publ ...
- iOS: 本地通知的前后变化(iOS10)
一.介绍 通知和推送是应用程序中很重要的组成部分.本地通知可以为应用程序注册一些定时任务,例如闹钟.定时提醒等.远程推送则更强大,提供了一种通过服务端主动推送消息到客户端的方式,服务端可以更加灵活地 ...
- IOS 本地通知推送消息
在现在的移动设备中,好多应用性的APP都用到了推送服务,但是有好多推送的内容,比如有的只是单纯的进行推送一个闹钟类型的,起了提醒作 用,有的则是推送的实质性的内容,这就分为推送的内容来区别用什么推送, ...
- IOS 本地通知
操作流程 1.接收通知 2.注册发送通知 用途:提示时间,闹钟 //接收本地通知(在Appdelegate里面实现) - (void)application:(UIApplication *)appl ...
- iOS(本地通知与远程通知)
iOS 推送通知有两种:本地推送.远程推送. 本地推送 : 在不需要联网的情况下,由APP发出推送,常用于某一时刻的通知,如闹钟.本地通送有局限性在于当APP处于后台或者退出时就无法发出通知. 远程 ...
- IOS 本地通知UILocalNotification
//发送通知 UILocalNotification *notification=[[UILocalNotification alloc] init]; if (notificati ...
随机推荐
- android 入门-使用adb安装及卸载apk
我想用adb 安装apk 到设备上现在出现了2个. 提示我没有找到设备 安装不用进去adb shell 这是你存放apk文件夹路径 下面安装apk到手机上(usb一定要连接成功否则读取不到手机 ...
- Matlab中如何将(自定义)函数作为参数传递给另一个函数
假如我们编写了一个积分通用程序,想使它更具有通用性,那么可以把被积函数也作为一个参数.在c/c++中,可以使用函数指针来实现上边的功能,在matlab中如何实现呢?使用函数句柄--这时类似于函数指针的 ...
- PE文件的执行顺序
当一个PE文件被执行时,PE装载器首先检查DOS MZ header里的PE header的偏移量.如果找到,则直接跳转到PE header的位置. 当PE装载器跳转到PE header后,第二步要做 ...
- Git的安装与使用
1,下载git https://code.google.com/p/msysgit/downloads/list 2,安装git ,我们选择命令行形式,这样无论在window下还是在linux下 都可 ...
- 防止ViewPager和Fragment结合使用时候的数据预加载
不知道你们使用ViewPager和Fragment结合的时候发现一个问题没,如果你的每个Fragment都需要请求网络数据,并且你在请求网络数据的时候会加入进度对话框的加载显示效果,当你显示第一个Fr ...
- html php 重定向 跳转 刷新
1秒后跳转 法一: <!DOCTYPE HTML> <html> <head> <meta http-equiv="refresh" ...
- 安卓微POS-PDA手持终端,支持离线在线联网销售开单;移动开单 盘点 功能
采购单.采购退货单 销售单.销售退货单.收款.优惠.赠品等操作实现盘点作业(多台设备同时作业,相同商品,数量累计) 现场打印票据 实现采购订单.采购单.采购退货单.销售订单.销售单.销售退货单验货没 ...
- wpf中手风琴控件Accordion编辑模板后控件不正常。
昨天有个网友Accordion控件从sl迁移到wpf时候显示不正常.也是就没有效果. 我也是sl做的比较多,wpf玩的少,Accordion模板里触发器,状态组调了一早上都没达到满意效果, 无奈只有百 ...
- ArcGIS 点到直线的距离
/****点到直线的距离*** * 过点(x1,y1)和点(x2,y2)的直线方程为:KX -Y + (x2y1 - x1y2)/(x2-x1) = 0 * 设直线斜率为K = (y2-y1)/(x2 ...
- 快速搭建Webservice接口测试环境
一.必备工具: apache-tomcat.Axis2(WebService引擎).实例类 二.部署步骤: 1.到apache官网 http://apache.org/ 下载apache-tomcat ...