IOS开发-本地通知
// 注册 发送通知的方法
-(void)pushNotfation{ //--------------初始化本地通知 alloc init 虽然是UI控件 但继承NSObject
UILocalNotification *not = [[UILocalNotification alloc]init];
// 设置本地通知启动的时间
not.fireDate = [NSDate dateWithTimeIntervalSinceNow:];
// 设置通知的标题
not.alertTitle = @"开始工作了。。。";
// 设置通知的内容
not.alertBody = @"起床做码农了,,,,hahhhhh";
// 通过通知 传递 内容--传值
not.userInfo = @{@"key":@"Value"};
// 设置App图标上面红点的 显示的数字
not.applicationIconBadgeNumber = ;
//*******************************************************************
// 设置重复发送通知的时间间隔
/*
NSCalendarUnitEra = kCFCalendarUnitEra,一个世纪
NSCalendarUnitYear = kCFCalendarUnitYear, 一年
NSCalendarUnitMonth = kCFCalendarUnitMonth, 一个月
NSCalendarUnitDay = kCFCalendarUnitDay, 天
NSCalendarUnitHour = kCFCalendarUnitHour, 时
NSCalendarUnitMinute = kCFCalendarUnitMinute,分
NSCalendarUnitSecond = kCFCalendarUnitSecond,秒
NSCalendarUnitWeekday = kCFCalendarUnitWeekday, 一个礼拜
NSCalendarUnitWeekdayOrdinal = kCFCalendarUnitWeekdayOrdinal,
*/
// not.repeatCalendar = kCFCalendarUnitEra;
//******************************************************************* //——----------------注册通知
//******
// UIUserNotificationTypeNone
// UIUserNotificationTypeBadge
// UIUserNotificationTypeSound
// UIUserNotificationTypeAlert 振动
//******
// respondsToSelector 方法是否可以响应
if ([[UIApplication sharedApplication]respondsToSelector:@selector(registerUserNotificationSettings:)]) {
// 解决
[[UIApplication sharedApplication]registerUserNotificationSettings:[UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge|UIUserNotificationTypeAlert categories:nil]]; }
// 设置声音
not.soundName = UILocalNotificationDefaultSoundName; // 发送通知
[[UIApplication sharedApplication]scheduleLocalNotification:not]; } //本地移除
-(void)removeLocalPushNotification:(UIButton*)sender
{
NSLog(@"%s",__FUNCTION__);
UIApplication* app=[UIApplication sharedApplication];
//获取当前应用所有的通知
NSArray* localNotifications=[app scheduledLocalNotifications]; if (localNotifications) { for (UILocalNotification* notification in localNotifications) { NSDictionary* dic=notification.userInfo; if (dic) {
NSString* key=[dic objectForKey:@"key"];
if ([key isEqualToString:@"name"]) {
//取消推送 (指定一个取消)
[app cancelLocalNotification:notification]; break;
}
} }
}
//取消当前应用所有的推送
//[app cancelAllLocalNotifications]; }
下一篇博客将会详细讲述--远程通知
IOS开发-本地通知的更多相关文章
- iOS开发本地通知
/* 本地通知:不通过网络,在本地实现的通知,自己发给自己 远程通知:必须通过网络,使用推送技术(APNs),实现通知 本地通知: 1.要完成可以接收的通知形式的注册 2.具体通知的设置 3.发送通知 ...
- 李洪强iOS开发之通知的使用
李洪强iOS开发之通知的使用 01 - 在A中发送通知 02 - 在B中监听通知 03 - 在B中通知出发的方法 04 - 在B控制器viewDidLoad调用通知
- IOS 的本地通知
IOS 的本地通知 - (void)viewDidLoad { [super viewDidLoad]; UILocalNotification* localNotification = [[UILo ...
- iOS开发系列--通知与消息机制
概述 在多数移动应用中任何时候都只能有一个应用程序处于活跃状态,如果其他应用此刻发生了一些用户感兴趣的那么通过通知机制就可以告诉用户此时发生的事情.iOS中通知机制又叫消息机制,其包括两类:一类是本地 ...
- iOS开发系列--通知与消息机制--转
来自:http://www.cocoachina.com/ios/20150318/11364.html 概述 在多数移动应用中任何时候都只能有一个应用程序处于活跃状态,如果其他应用此刻发生了一些用户 ...
- Android 和iOS 创建本地通知
1 Android 中的发送本地通知的逻辑如下 先实例化Notification.Builder,再用builder创建出具体的Notification,创建时要指定好启动用的PendingInten ...
- ios开发之通知事件
每天学习一点点,总结一点点,成功从良好的习惯开始! 昨天学习了ios开发中的关于通知事件的一些东西,在这里简单总结下,仅供初学者学习,更多的是怕我自己忘了,咩哈哈~~~~ 通知(notificatio ...
- iOS开发之通知中心(NSNotificationCenter)
前言 面向对象的设计思想是把行为方法封装到每一个对象中,以用来增加代码的复用性.正是这种分散封装,增加了对象之间的相互关联,总是有很多的对象需要彼此了解以及相互操作! 一个简单示例说明这种交互产生的对 ...
- iOS中 本地通知/本地通知详解 韩俊强的博客
布局如下:(重点讲本地通知) iOS开发者交流QQ群: 446310206 每日更新关注:http://weibo.com/hanjunqiang 新浪微博 Notification是智能手机应用编 ...
随机推荐
- 如何让popWindow显示在view上方
看了bilibili的客户端搜索按钮,很喜欢大爱!自己也想做个类似的(相似度 10% 哈哈) popWin的出现退出动画也可以自己设定,用过其方法setAnimationStyle(R.style.x ...
- 关于JAVA EE项目在WEB-INF目录下的jsp页面如何访问WebRoot中的CSS和JS文件
找了这么久资料,总算解决了 感谢博客园:http://www.cnblogs.com/xsht/p/5275081.html 感谢百度:http://zhidao.baidu.com/link?url ...
- VRP介绍以及AC初始化配置-06
VRP介绍 VRP:多功能路由平台(Versatile Routing Platform) 角色:网络操作系统 支撑多种设备的软件平台 提供TCP/IP 路由服务 通用路由平台VRP(Versatil ...
- 6/13 Sprint2 看板和燃尽图
部分页面展示
- 并发编程 02—— ConcurrentHashMap
Java并发编程实践 目录 并发编程 01—— ThreadLocal 并发编程 02—— ConcurrentHashMap 并发编程 03—— 阻塞队列和生产者-消费者模式 并发编程 04—— 闭 ...
- 并发编程 06—— CompletionService :Executor 和 BlockingQueue
Java并发编程实践 目录 并发编程 01—— ThreadLocal 并发编程 02—— ConcurrentHashMap 并发编程 03—— 阻塞队列和生产者-消费者模式 并发编程 04—— 闭 ...
- js模拟类
ECMAScript6已经支持了class,但之前版本都不支持类,但是可以通过一些方法来模拟类. js中的类,既是重点,也是难点,很多时候都感觉模棱两可. 首先强调一下js中很重要的3个知识点:thi ...
- JAVA 十六进制与字符串的转换
public static String toHexString(int i)以十六进制的无符号整数形式返回一个整数参数的字符串表示形式.如果参数为负,那么无符号整数值为参数加上 232:否则等于该参 ...
- docker初学笔记
什么是docker 不准确的说,docker是一种轻量级的虚拟机,它把可执行文件和运行环境打包成一个image,放在容器里运行,但是启动速度比虚拟机快很多,资源消耗小.这种技术主要是为了解决部署环境的 ...
- asp.net页面跳转sessionid会变
今天发现在一个Asp.net站点中, 同一次登录, 不停刷新页面或者页面跳转, 此时后台Session的SessionID总是变化的. 创建一个页面,添加一个button,后台代码非常简单,如下 ...