进入推送!
2016-06-28 16:03
330 查看
带你走进推送
在推送平台特别多,例如极光,友盟等等 但实现它的推送功能都是大同小异
配置推送证书 这些我就不再说了百度上搜一大堆
首先直接进入主题
讲解下载AppDelegate中对于通知需要用到的几个重要的方法-
这里是获取设备的deviceToken的方法(必须要执行)
-(void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken{ NSLog(@"%@",deviceToken);//这里的Token就是我们设备要告诉服务端的Token码 }
下面这两个是接收远程推送过来消息的方法
UIApplicationDelegate中提供了两个方法来处理推送的回调,其中第二个方法是iOS7以后才有的:
// 如果app在前台运行,系统收到推送时会调用该方法 - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo { // 处理推送消息 NSLog(@"userinfo:%@",userInfo); NSLog(@"收到推送消息:%@",[[userInfo objectForKey:@"aps"] objectForKey:@"alert"]); } // 不管app是在前台运行还是在后台运行,系统收到推送时都会调用该方法 - (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo fetchCompletionHandler:(void (^)(UIBackgroundFetchResult result))completionHandler { if (application.applicationState == UIApplicationStateActive) { NSLog(@"active"); //程序当前正处于前台 } else if(application.applicationState == UIApplicationStateInactive) { NSLog(@"inactive"); //程序处于后台 } }
很明显可以看出第一个方法的缺陷,就是当程序在后台运行时候不会调用该方法。
这个模块将持续更新
相关文章推荐
- windows定时执行kettle的job
- Fence Repair(poj 3253)
- Java 如何有效地避免OOM:善于利用软引用和弱引用
- [改善Java代码]线程优先级只使用三个等级
- 编译报错 :The method list(String, Object[]) is ambiguous for the type BaseHibernateDao<M,PK>
- 当执行php脚本时用户关闭浏览器会发生什么?
- CentOS 7最小化安装后找不到‘ifconfig’命令——修复小提示
- 超酷MWC四轴飞行器DIY全套教程
- Groovy学习笔记 一 、搭建
- greenplum数据库引擎探究
- Android中自定义View的状态保存
- js禁止页面刷新与后退的方法
- Fio安装、测试,Gfio图形化测试I/O读写性能
- 風姿花伝(ふうし かでん)
- Java实现监控目录下文件变化
- 转发(request.setRequestDispacter)和重定向(response.sendRedirect)的区别以及转发的include和forward的区别
- 2017中国农业大学金融学考研交流群
- request和response的相关
- 体会建造者模式Builder
- tomcat8 下利用jconsole实现监控