ios 接入百度推送

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/youyou_56/article/details/80177121

iOS在接入百度推送时,需要百度开发者平台创建应用生成app ID,在创建的过程中则需要上传.pem文件,(开发环境和生产环境)创建.pem文件请参照官方给的步骤。
一、创建.pem完成并上传,报错:证书无效
解决办法:
1、首先确保创建.pem文件的每一个步骤都没有错
2、查看当前Mac系统版本,如果高于10.12.6,那么可能是因为当前Mac系统版本对应的openssl版本高于0.9.8zh,而百度推送不接收高于0.9.8zh版本openssl生成的.pem文件。
3、确定问题之后,可以到
https://www.openssl.org/source/old/0.9.x/ 下载openssl 0.9.8zh版本

4、cd 你解压后的压缩包目录

5、执行命令

./Configure darwin64-x86_64-cc –prefix=/usr/local/openssl –shared
这一步可能会遇到没有权限创建openssl文件夹的问题,可以手动到/usr/local/下创建一个openssl文件夹,然后在执行命令

6、执行命令(如果在/usr/local/目录下找不到openssl,那么需要新建,然后再执行该步骤)

make && make install
7、openssl将会出现在这个路径下:/usr/local/openssl/bin/openssl,命令行查看下版本:

/usr/local/openssl/bin/openssl version
显示0.9.8zh,成功!!!

8、生成pem:

/usr/local/openssl/bin/openssl pkcs12 -in 你的p12名字.p12 -out 输出的pem名字.pem -nodes
9、丢给百度推送吧
(参考:https://www.cnblogs.com/zhaowenshuang/p/7668848.html

二、创建应用成功之后,导入百度推送sdk到自己的项目中(参照官方给的文档)
一切准备就绪,run进行测试
报错:有方法报错selector not recognized
解决:
在Build Setting-搜索other-Other Linker Flags-添加-ObjC或-all_load或-force_load
重新run,问题解决
(参考:https://blog.csdn.net/h643342713/article/details/53524983

三、收到推送消息需要在icon上设置角标
经百度查询,收到远程推送消息时:此时收到推送,系统会根据推送消息的aps里的内容执行操作,包括:”sound”-提示音、”alert”-通知栏显示的推送内容、”badge”-程序角标值、”content-available”-静默推送标志,所以icon上的角标是由后台给的,然后收到消息时系统会自行根据字段badge来显示。
(参考:https://blog.csdn.net/h643342713/article/details/53524983

猜你喜欢

转载自blog.csdn.net/youyou_56/article/details/80177121