iOS10推送之基础知识(必看篇)

2020-01-18 16:00:19于丽

前言

在北京时间9月14号凌晨1点,苹果正式推送iOS 10正式版,下面给大家详细的介绍iOS10推送的基础知识,在看完简单入门篇大家就可以简单适配了,然后再通过中级篇的内容,相信对大家学习理解有很大的帮助,下面话不多说了,来看看吧。

一、简单入门篇

相对简单的推送证书以及环境的问题,我就不在这里讲啦,我在这里说的,是指原有工程的适配。

1.首先我们需要打开下面的开关。所有的推送平台,不管是极光还是什么的,要想收到推送,这个是必须打开的哟~

ios10,推送通知,ios10推送,推送改变

之后,系统会生成一个我们以前没见过的文件,如图:

ios10,推送通知,ios10推送,推送改变

ios10,推送通知,ios10推送,推送改变

可能产生的问题:之前有朋友反馈过,将开发环境由 development 变成 production ,在开关这里会产生错误,如图:

ios10,推送通知,ios10推送,推送改变

如果大家点击Fix issue之后,会惊奇的发现,APS Environment由 production 又变成 development 了。

解决办法:我的建议是不做任何修改。

经过我的测试,打包之后,生成的ipa包内,是没有这个.entitlements 文件的。经过测试,我发现是可以正常收到推送信息的。测试的方法如下,大家也可以测试一下。

测试方法:打包之后安装ipa文件,然后利用极光推送,选择生产环境,推送,即可。

经过上面的操作,你就会惊奇的发现,推送已经适配完毕了,iOS10的系统,已经可以正常接收通知了。

二、中级篇

这里我会给大家讲一讲iOS10的推送,如何注册,通过什么代理,哪些方法可以用,哪些方法不可以用。

1.系统自带方法

大家不管是使用三方平台的推送,还是系统自带的推送,都先应该了解下系统自带方法,如何实现远程通知的实现。

第一步导入#import <UserNotifications/UserNotifications.h>

且要遵守<UNUserNotificationCenterDelegate>的协议,在Appdelegate.m中。

这里需要注意,我们最好写成这种形式


#ifdef NSFoundationVersionNumber_iOS_9_x_Max
#import <UserNotifications/UserNotifications.h>
#endif