iOS-本地的推送
//
// ViewController.m
// 05-本地的推送
//
// Created by hongqiangli on 2017/6/12.
//
#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
}
/*
补充:
让模拟器锁屏: command + l
*/
- (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event{
//iOS8之后的改版,需要注册类型
//声音,
/*
UIUserNotificationTypeNone = 0, // the application may not present any UI upon a notification being received
UIUserNotificationTypeBadge = 1 << 0, 包含图标文字
UIUserNotificationTypeSound = 1 << 1,声音
UIUserNotificationTypeAlert = 1 << 2,主题内容
*/
UIUserNotificationSettings *settings = [UIUserNotificationSettings settingsForTypes:UIUserNotificationTypeBadge | UIUserNotificationTypeSound categories:nil];
[[UIApplication sharedApplication]registerUserNotificationSettings:settings];
//1 创建一个本地通知
UILocalNotification *local = [[UILocalNotification alloc]init];
//设置属性
//设置推送内容
local.alertBody = @"女神:在吗?";
//设置从现在开始多少秒开始发这个推送
local.fireDate = [NSDate dateWithTimeIntervalSinceNow:5];
//设置声音(默认的)
local.soundName = UILocalNotificationDefaultSoundName;
//
local.alertAction = @"约";
//文字
local.applicationIconBadgeNumber = 10;
//l
local.userInfo = @{@"name": @"女神",@"content":@"在吗?"};
//应用级别
//立马发送通知
[[UIApplication sharedApplication]presentLocalNotificationNow:local];
//定制一个通知
// [[UIApplication sharedApplication]scheduleLocalNotification:local];
//取消
// [[UIApplication sharedApplication]cancelAllLocalNotifications];
//用代理,监听什么时候接收到通知
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
//----------------
//
// AppDelegate.m
// 05-本地的推送
//
// Created by hongqiangli on 2017/6/12.
//
#import "AppDelegate.h"
@interface AppDelegate ()
@end
@implementation AppDelegate
//程序在前台的时候回调用接收到通知
//程序一直活着就会调用这个方法
- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification{
NSLog(@"%@",notification);
}
//程序启动会调用:
//1 程序启动
//点击图标启动
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
UILocalNotification *info = launchOptions[UIApplicationLaunchOptionsLocalNotificationKey];
if(info){
UILabel *label = [[UILabel alloc]initWithFrame:CGRectMake(0, 0, 300, 300)];
label.backgroundColor = [UIColor redColor];
label.numberOfLines = 0;
//取出携带信息
// NSDictionary *userInfo = info[@"userInfo"];
label.text = [NSString stringWithFormat:@"%@",info.userInfo];
[self.window.rootViewController.view addSubview:label];
}
return YES;
}
iOS-本地的推送的更多相关文章
- xamarin.ios 本地通知推送
由于ios10版本以后UILocalNotification被标为弃用了,所以要添加新的本地通知推送功能,下面提供一些代码参考. 一.先在AppDelegate.cs上注册本地通知推送功能. publ ...
- IOS 本地通知推送消息
在现在的移动设备中,好多应用性的APP都用到了推送服务,但是有好多推送的内容,比如有的只是单纯的进行推送一个闹钟类型的,起了提醒作 用,有的则是推送的实质性的内容,这就分为推送的内容来区别用什么推送, ...
- iOS 本地消息推送机制
转发自:https://www.jianshu.com/p/e347f999ed95 //已经废除的 http://blog.csdn.net/three_zhang/article/deta ...
- IOS - 本地消息推送
第一步:创建本地推送 // 创建一个本地推送 UILocalNotification *notification = [[[UILocalNotification alloc] init] autor ...
- iOS 10 消息推送(UserNotifications)秘籍总结(二)
背景 上一篇博客iOS 10 消息推送(UserNotifications)秘籍总结(一)发布后被 简书编辑推荐至首页,这着实让我受宠若惊啊.可是好事不长,后面发生了让我伤心欲绝的事,我的女朋友不要我 ...
- iOS开发 iOS10推送必看
iOS10更新之后,推送也是做了一些小小的修改,下面我就给大家仔细说说.希望看完我的这篇文章,对大家有所帮助. 一.简单入门篇---看完就可以简单适配完了 相对简单的推送证书以及环境的问题,我就不在这 ...
- 在Unity3D中实现安卓平台的本地通知推送
[前言] 对于手游来说,什么时候需要推送呢?玩过一些带体力限制的游戏就会发现,我的体力在恢复满后,手机会收到一个通知告诉我体力已完全恢复了.这类通知通常是由本地的客户端发起的,没有经过服务端. 在安卓 ...
- Android本地消息推送
项目介绍:cocos2dx跨平台游戏 项目需求:实现本地消息推送,需求①:定点推送:需求②:根据游戏内逻辑实现推送(比如玩家体力满时,需要计算后到点推送):需求③:清理后台程序或重启后依然能够实现本地 ...
- git本地分支推送到远程分支
1.创建的创建和初始化 创建git仓库可以在远端创建一个仓库, 然后check到本地,在本地的文件里创建工程文件,然后提交 也可以将本地现有的工程和远端的空仓库关联 本地创建了一个工程 iOSDemo ...
- git将本地仓库推送到远程仓库
如何将本地仓库推送到公司远程仓库? 1:前提是你本地安装好git.先把远程git仓库克隆到本地 git clone 远程仓库的地址(SSH) 2: git branch //查看本地分支 3: g ...
随机推荐
- 1z0-052 q209_3
3: Identify two situations in which you can use Data Recovery Advisor for recovery. (Choose two.) —° ...
- EXCEPTION-SQL语句
CreateTime--2017年1月12日14:37:52Author:Marydon 声明:异常类文章主要是记录了我遇到的异常信息及解决方案,解决方案大部分都是百度解决的,(这里只是针对我遇到 ...
- 〖Linux〗使用gsoap搭建web server(C)
1. gsoap的好处就不用说了:百度百科 2. gsoap的下载地址:项目地址,目前我使用的是2.8.15版本 3. 开发环境:Ubuntu13.10 4. 具体操作步骤(以简单相加为例): 1) ...
- win7硬盘安装方法
Windows 7 完全硬盘安装方法 干干净净的C盘 事先准备:装好系统的电脑一台,win 7安装iso. 注: (1).Windows 7要求安装在NTFS分区,但是其他分区可以是FAT32格式! ...
- poj 2187 Beauty Contest , 旋转卡壳求凸包的直径的平方
旋转卡壳求凸包的直径的平方 板子题 #include<cstdio> #include<vector> #include<cmath> #include<al ...
- 【VUE+laravel5.4】vue给http请求 添加请求头数据
1.适用于 ajax和普通的http请求 2.vue添加用法如下: <script type="text/javascript src="/dist/js/app.min.j ...
- 《Python数据分析》-Ch01 Python 程序库入门
Ch01 Python 程序库入门 1.1 一些简要介绍: NumPy 是一个基础性的Python库,为我们提供了常用的数值数组和函数. SciPy是Python的科学计算库,对NumPy的功能进 ...
- Python 的 pass 语句
Python pass是空语句,是为了保持程序结构的完整性. pass 不做任何事情,一般用做占位语句. 例子1: if __name__ == '__main__': pass 例子2: # 输出 ...
- jQuery动态表格插件 AppendGrid
AppendGrid是一个jQuery动态表格插件,提供像填写电子表格数据一样在页面去输入结构化数据. 它允许用户在表格里增加/删除/插入/删除行,控制input/select/textarea 提交 ...
- IE浏览器中,设置指定程序查看源文件
第一步: 先按Ctrl+R,输入regedit进入注册表 依次找到 "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explo ...