iOS极光推送

本人在对接iOS推送时,用的是极光推送,中间可谓是:

一波坑来一波坑又起!!!

现将部分规避代码总结如下:

首先在极光注册自己的应用,注意上传开发和生产证书时,一定注意!

项目对接SDK时,官网说的非常详细,本人Pod加载的,并手动添加部分配置:

允许Push通知


更给Plist文件中,pod导入的JPush访问权限

直接上代码,因为是在Appdelegate里面加入的方法,所以我给AppDelegate写了一个分类,在.h文件中可以写:

在.m文件中实现以下方法:

方法中又再次调用YTPushHelper我是将极光Push方法,统一封装在了这个类里面。截图如下:


YTPushHelper.h


YTPushHelper.m -1


YTPushHelper.m -2

紧接着在AppDelegate中- (BOOL)application:(UIApplication*)application didFinishLaunchingWithOptions:(NSDictionary*)launchOptions这个方法下加上代码:[selfJPushApplication:applicationdidFinishLaunchingWithOptions:launchOptions];即可。

用户点击查看通知,打开App时,角标清0,方法为:setApplicationIconBadgeNumber。

以上,基本的配置就可以实现了。直接官网测试,或者后台测试就可以了。


特使情况!如果用户的App是在打开时,也想进行推送,实现以下方法即可:


系统小于iOS6.0


iOS 7.0之后使用

在这个方法下,特别需要注意,拿到推送显示信息之后,注意就开始判断App此时状态了:


App状态枚举

其中: UIApplicationStateActive为前台操作;

           UIApplicationStateInactive为纯后台,或者伪后台时调用;

           UIApplicationStateBackground这个我并未使用,暂时不知!哈哈

基本就可以实现各种时机的推送了。如有问题或者错误,请提出,大家共同进步。

你可能感兴趣的:(iOS极光推送)