首先:
1.做iOS消息推送需要真机测试
2.做iOS消息推送需要有付费的开发者账号
是否继续看帖?
先学习一下相关的知识吧!
因为中途可能会遇到一些问题,这篇文章或许能够帮助你解决它们。
一、注册登录极光推送
消息推送采用极光推送 https://www.jpush.cn/
去极光推送注册并登录,然后创建应用
![1306450-c3dc592da7fda2ce.png](https://i-blog.csdnimg.cn/blog_migrate/3c61a1cf70524f64ddb0775b67dfb1a9.png)
名字随意,但之后的文件尽量都包含这个项目名,证书先不管,项目名写好后就直接创建
Appkey 之后会用到,记住!!!
![1306450-25873ed20708e8ba.png](https://i-blog.csdnimg.cn/blog_migrate/cc3cabb79c78e7a4e8b48a14562fb677.png)
二、获取证书、Xcode配置文件、添加真机测试设备
然后进入苹果开发者中心 https://developer.apple.com
点击member center,
然后点击如图选项:
![1306450-ee4d437ef6f7490c.png](https://i-blog.csdnimg.cn/blog_migrate/64ad28d4b96d671c3823471e6c53faca.png)
现在你会看到:
![1306450-3b5c785615505131.png](https://i-blog.csdnimg.cn/blog_migrate/090f5f8986a1eb9d1850ba7c0b80c87b.png)
选择iOS Apps中的certificates,看到:
![1306450-34044bba99928665.png](https://i-blog.csdnimg.cn/blog_migrate/72fd38cb6fe226dd55428328557079b2.png)
主要操作就是完成划线的这四部分以及Xcode的配置。
配置完第一个选项可以获得证书,然后会用于钥匙串访问。然后会导出一个p12文件,之后会在极光推送网站里上传它。
配置完第二个选项才可开发具有消息推送功能的APP。
配置完第三个,可以在指定的ios设备上进行真机测试。
配置完第四个,可以获得Xcode需要的配置文件。
现在按照顺序操作,没有讲述的就不用去配置:
1.点击Identifiers的App IDs,新建
![1306450-08947e4793915da6.png](https://i-blog.csdnimg.cn/blog_migrate/5590ea83c3f1a0aad829702f97e2beaa.png)
![1306450-b0699ad3d4a9d613.png](https://i-blog.csdnimg.cn/blog_migrate/9379031f3078214db8d7d1e9d43e13c2.png)
![1306450-be25beb0e91c4666.png](https://i-blog.csdnimg.cn/blog_migrate/248bb3a522e12ad7a11e3d7566961f8a.png)
这里的格式是反域名的格式。这个名称之后会用于配置XCODE。
![1306450-cc27a2db91a55736.png](https://i-blog.csdnimg.cn/blog_migrate/3310964c08ec29fc2cc757462d969787.png)
Continue.
![1306450-b253636d6787a69c.png](https://i-blog.csdnimg.cn/blog_migrate/c7abe3a0ca95c6467c69f01d949759ec.png)
Submit. Done.
![1306450-70903f1042d11515.png](https://i-blog.csdnimg.cn/blog_migrate/b85258ef0bd3e97d2d3764f8f74e7c5c.png)
2.点击Devices的All,然后新建+,
![1306450-99fa70c573403000.png](https://i-blog.csdnimg.cn/blog_migrate/25902f921f9ddfea889aff3b03805805.png)
名字任意,UDID 的获取方式 http://www.pgyer.com/doc/view/udid,然后continue。关于添加设备,网上的资料很多,可自行搜索。不再赘述。
3.点击Provisioning Profiles的All,然后新建+,
![1306450-23e3594c7e2ebbb0.png](https://i-blog.csdnimg.cn/blog_migrate/8b05e4fd84064cb28be8094d89ebe32e.png)
continue.
![1306450-77365ae08038333f.png](https://i-blog.csdnimg.cn/blog_migrate/bcc2858851bc0ce52407e03bbc638086.png)
选择你的新项目之后,continue.
![1306450-3d39021a34685ecf.png](https://i-blog.csdnimg.cn/blog_migrate/0dcbf5ceb86e0211e8aa7fb8aacc2536.png)
选择后,continue.
![1306450-01f1f24786824c26.png](https://i-blog.csdnimg.cn/blog_migrate/c3fc3323cdfd43a753b0953091a93294.png)
选择后,continue.
![1306450-4e3812024f2910fd.png](https://i-blog.csdnimg.cn/blog_migrate/d79bf5bbb4ec3d65b9d19fbc288092a4.png)
任意输入一个名字后,continue,download。
这个.mobileprovision文件在最后要用,记住!!!
建议这些临时download的都放在桌面,便于操作,之后一并删除。
4.点击Certificates的All,然后新建
![1306450-b41556f736d913a1.png](https://i-blog.csdnimg.cn/blog_migrate/b5012905fdf28b03aaf8a9285d0ffcb8.png)
然后选择:
![1306450-b77bf61d9a034b7f.png](https://i-blog.csdnimg.cn/blog_migrate/a374fca721544c4c512fc7b3a88d4fd1.png)
选择如图所示。Production部分不管。Development是只用于测试的APP,而Production用于要上架到app store的APP。
![1306450-c899dbddf003fc9a.png](https://i-blog.csdnimg.cn/blog_migrate/29caf939bd3e76d1b538b5902118afdf.png)
一路continue到如图:
![1306450-baea9451f96f5f73.png](https://i-blog.csdnimg.cn/blog_migrate/bd17f98fb99d9bbdef9af4c0d915387a.png)
打开 钥匙串访问-证书助理-从证书... ,然后名称自己输入。
选择存储到磁盘。
然后不关闭钥匙串访问,继续之前的步骤,上传这个文件,generate,download,获得一个.cer,双击打开,在钥匙串访问中找到它的产物。
![1306450-b2d79c5253e417dd.png](https://i-blog.csdnimg.cn/blog_migrate/7985f0b371bee0557d664b783dccfe0d.png)
![1306450-bc06b022f2da96da.png](https://i-blog.csdnimg.cn/blog_migrate/941fcc732fefa0e8fae57deba634c306.png)
然后右键它(一个.p12文件),导出,密码任意但是要记住,之后要用。
然后回到极光推送,设置之前没有设置的证书部分。
![1306450-77e42b0aff6b44c9.png](https://i-blog.csdnimg.cn/blog_migrate/04c5a54f477103d79cfc4a13e4de9b2e.png)
上传.p12证书,输入刚刚的那个密码。然后保存修改。
三、配置Xcode、进行真机测试
去极光推送的首页下载ios的SDK,下载完解压,目录里有demo。 点击直达
打开demo,导入之前的那个.mobileprovision文件 ,然后点击项目的根目录。
找到如图位置,输入那个反域名名称。 如果找不到,是画圈部分没有选Targets。
![1306450-ab64091c02c3accc.png](https://i-blog.csdnimg.cn/blog_migrate/7ff8ea6dbd866a2c2dd35b6d71a37391.png)
配置profile,在箭头所指的部分对应的选项里选择自己定义的名字即可
![1306450-27a54c1ab9cb9d0d.png](https://i-blog.csdnimg.cn/blog_migrate/729cd2c8ca43f44477c399ad9fa32ab8.png)
在项目的supporting files目录下找到pushconfig.plist,设置app_key 为那个App key。
![1306450-a60741c9a6b9cda9.png](https://i-blog.csdnimg.cn/blog_migrate/d1145c8b6936d8067f45adf2d5775ce2.png)
输入极光的那个appkey就可以了,然后连接真机,如ipad。
![1306450-880a07463a19f3f0.png](https://i-blog.csdnimg.cn/blog_migrate/7bb25d5deaee57117dd9f51d78c59fe4.png)
选择真机后,运行项目。
四、推送消息
回到极光推送网站,找到如图所示的地方:
![1306450-34b0d6ef69b3178c.png](https://i-blog.csdnimg.cn/blog_migrate/6b88e6a7308e7a48dedad5ea8cf516d3.png)
然后就可以在推送内容里输入内容,点击右下角的发送,向ipad推送消息了,建议将运行的app后台运行,然后测试的消息就会在顶部弹出。
![1306450-64a08983a131fb4b.png](https://i-blog.csdnimg.cn/blog_migrate/938b7169654df1b1aef02ffcaeb7d808.png)
还可以设置通知的声音。
然后badge的+1是为了实现这样的功能:如果这个推送,用户没有查看,你再发一条,它就会加1,成为两条未读的推送。如果用默认的没有+的那种方式,你再推送时,用户没有查看的推送就只有一条不会是两条。
下面的附加字段可以用来实现:在代码中对附加的字段进行解析,然后执行相应的操作。如附加 键1,值为一个链接。这时就可以让ios弹出通知然后附加这个链接,让用户可以选择浏览这个网站。
五、测试结果
输入以下内容:
![1306450-8302ebd620df5db3.png](https://i-blog.csdnimg.cn/blog_migrate/5ba9dc1940445d140adb15295d51411c.png)
Xcode控制台收到了对应的数据:
![1306450-daffb89eadb8df8b.png](https://i-blog.csdnimg.cn/blog_migrate/4f5fe8e7ef9274408e6e3e278b3e1189.png)
熟练之后,分分钟搞定iOS消息推送!