UILocalNotification本地通知
2024-10-19 00:30:22
// 执行通知一定要退出应用或挂起应用(进入后台)才能收到通知。
1、在iOS8及其以后版本中使用本地消息需要先获得用户的许可,否则无法成功注册本地消息。因此,我们将询问用户许可的代码片段添加到了app启动后的入口方法中(AppDelegate
中的didFinishLaunchingWithOptions
)
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
var version=UIDevice.currentDevice().systemVersion
if (version as NSString).floatValue>=8.0{
application.registerUserNotificationSettings(UIUserNotificationSettings(forTypes: UIUserNotificationType.Alert | UIUserNotificationType.Badge | UIUserNotificationType.Sound, categories: nil))
} self.window=UIWindow(frame: UIScreen.mainScreen().bounds)
self.window!.backgroundColor=UIColor.whiteColor()
self.window!.makeKeyAndVisible()
self.window!.rootViewController=TB_Home()
return true
}
2、发送通知
func sendLocalNotification(){ //创建本地通知
var notification=UILocalNotification() //通知触发时间(10秒后触发)
notification.fireDate=NSDate(timeIntervalSinceNow: ) //通知时区(使用本地时区)
notification.timeZone=NSTimeZone.defaultTimeZone() //通知提示标题(如果不写默认是App的名称)
notification.alertTitle="messageTitle" //通知提示内容
notification.alertBody="messageBody" //通知提示音(使用默认的通知提示音)
notification.soundName=UILocalNotificationDefaultSoundName //应用程序右上角显示的数字+1
notification.applicationIconBadgeNumber = UIApplication.sharedApplication().applicationIconBadgeNumber+ //启动这个通知
UIApplication.sharedApplication().scheduleLocalNotification(notification)
}
3、进入前台,清除右上角图标及当前应用所有通知
func applicationWillEnterForeground(application: UIApplication) {
application.applicationIconBadgeNumber= //程序右上角图标设置0 application.cancelAllLocalNotifications() //清除当前应用所有通知
}
最新文章
- Bzoj3041 水叮当的舞步
- JavaScript获取时间戳、日期格式化
- idea jrebel6 安装,破解
- mvc 中关于资源文件的扩展
- 扁平化设计五大原则(转自CSDN翻译)
- gastic 安装
- if语句使用
- in_array函数的第三个参数 strict
- 为什么for不能有序遍历数组的所有元素?(Array的设计原理)
- 如何在Windows系统上用抓包软件Wireshark截获iPhone等网络通讯数据
- 一步一步学android控件(之十六)—— CheckBox
- filestream.read(buffer,offset,count)的正确解释
- 左右sqlplus一些方法用于汇总
- [转]Java初始化顺序总结 - 静态变量、静态代码块、成员变量、构造函数
- SpringMVC框架四:异常处理器
- 执行效率做比较,Go、python、java、c#、delphi、易语言等
- 【K8S学习笔记】Part3:同一Pod中多个容器间使用共享卷进行通信
- 用js来实现银行家算法
- ubuntu安装TexturePicker
- 能使用html/css解决的问题就不要使用JS
热门文章
- How to setup SLF4J and LOGBack in a web app - fast--转载
- 聊一聊ES5数组(Array)新增的那些方法
- SQL学习笔记
- 滚动新闻插件vticker
- android的平台架构及特性
- 【转】adb uninstall卸载apk文件说明
- ASP怎样获得代码中第一张图片地址
- 转载--- SQL Server XML基础学习之<;4>;--XPath
- $(document).ready() 、 $(&#39;#id&#39;).load() 、window.onload 的区别
- CS0016: 未能写入输出文件&ldquo;c:\windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\data\34aae060\b7daa87d\App_Web_addadvice.aspx.cdcab7d2.ekhlcbjd.dll&rdquo;--&ldquo;目录名无效。 &rdquo;