美文网首页iOS的新技术iOS开发常用知识点iOS 开发
几分钟搞定iOS消息推送(APNs) 傻瓜式操作

几分钟搞定iOS消息推送(APNs) 傻瓜式操作

作者: FicowShen | 来源:发表于2016-01-10 15:57 被阅读9230次

首先:

1.做iOS消息推送需要真机测试

2.做iOS消息推送需要有付费的开发者账号

是否继续看帖?


先学习一下相关的知识吧!

因为中途可能会遇到一些问题,这篇文章或许能够帮助你解决它们。

iOS Provisioning Profile(Certificate)与Code Signing详解


一、注册登录极光推送

消息推送采用极光推送 https://www.jpush.cn/

去极光推送注册并登录,然后创建应用

名字随意,但之后的文件尽量都包含这个项目名,证书先不管,项目名写好后就直接创建

Appkey 之后会用到,记住!!!


二、获取证书、Xcode配置文件、添加真机测试设备

然后进入苹果开发者中心 https://developer.apple.com

点击member center,

然后点击如图选项:

现在你会看到:

选择iOS Apps中的certificates,看到:

主要操作就是完成划线的这四部分以及Xcode的配置。

配置完第一个选项可以获得证书,然后会用于钥匙串访问。然后会导出一个p12文件,之后会在极光推送网站里上传它。

配置完第二个选项才可开发具有消息推送功能的APP。

配置完第三个,可以在指定的ios设备上进行真机测试。

配置完第四个,可以获得Xcode需要的配置文件。


现在按照顺序操作,没有讲述的就不用去配置:


1.点击Identifiers的App IDs,新建

输入你自己的项目名 这个之后会用到

这里的格式是反域名的格式。这个名称之后会用于配置XCODE。

勾选

Continue.

划线部分一定要亮起来才行

Submit. Done.


2.点击Devices的All,然后新建+,

名字任意,UDID 的获取方式 http://www.pgyer.com/doc/view/udid,然后continue。关于添加设备,网上的资料很多,可自行搜索。不再赘述。


3.点击Provisioning Profiles的All,然后新建+,

continue.

选择你的新项目之后,continue.

选择后,continue.

选择后,continue.

任意输入一个名字后,continue,download。

这个.mobileprovision文件在最后要用,记住!!!

建议这些临时download的都放在桌面,便于操作,之后一并删除。


4.点击Certificates的All,然后新建

然后选择:

选择如图所示。Production部分不管。Development是只用于测试的APP,而Production用于要上架到app store的APP。

一路continue到如图:

打开 钥匙串访问-证书助理-从证书...    ,然后名称自己输入。

选择存储到磁盘。

然后不关闭钥匙串访问,继续之前的步骤,上传这个文件,generate,download,获得一个.cer,双击打开,在钥匙串访问中找到它的产物。

然后右键它(一个.p12文件),导出,密码任意但是要记住,之后要用。

然后回到极光推送,设置之前没有设置的证书部分。

上传.p12证书,输入刚刚的那个密码。然后保存修改。



三、配置Xcode、进行真机测试

去极光推送的首页下载ios的SDK,下载完解压,目录里有demo。      点击直达

打开demo,导入之前的那个.mobileprovision文件 ,然后点击项目的根目录。

找到如图位置,输入那个反域名名称。 如果找不到,是画圈部分没有选Targets。

配置profile,在箭头所指的部分对应的选项里选择自己定义的名字即可

在项目的supporting files目录下找到pushconfig.plist,设置app_key 为那个App key。

输入极光的那个appkey就可以了,然后连接真机,如ipad。

选择真机后,运行项目。


四、推送消息

回到极光推送网站,找到如图所示的地方:

然后就可以在推送内容里输入内容,点击右下角的发送,向ipad推送消息了,建议将运行的app后台运行,然后测试的消息就会在顶部弹出。

还可以设置通知的声音。

然后badge的+1是为了实现这样的功能:如果这个推送,用户没有查看,你再发一条,它就会加1,成为两条未读的推送。如果用默认的没有+的那种方式,你再推送时,用户没有查看的推送就只有一条不会是两条。

下面的附加字段可以用来实现:在代码中对附加的字段进行解析,然后执行相应的操作。如附加 键1,值为一个链接。这时就可以让ios弹出通知然后附加这个链接,让用户可以选择浏览这个网站。


五、测试结果

输入以下内容:

Xcode控制台收到了对应的数据:

熟练之后,分分钟搞定iOS消息推送!

相关文章

网友评论

  • 没技术的BUG开发攻城狮:给你推荐个工具,Easy apns provider
    FicowShen:@iOSer菜鸟养成中
    谢谢:blush:
  • 疯狂小跳虫:谢谢分享
    FicowShen:@疯狂小跳虫 不客气
  • ivylee_mr:请问 这个 离线推送 需要向苹果付费吗? 可以 兼容环信的离线消息 一起使用吗?
    ivylee_mr:@FicowShen 谢谢撸主
    FicowShen:@ivylee_mr 推送不用向苹果付费的。至于能不能兼容,这个我就不知道啦,你去实践出真知吧。:joy:
  • 七月喝雪碧:最新的Demo文件夹中没有找到 pushconfig.plist文件,只看到了PushTest-info.plist文件,该怎么操作呢?手动添加添加该键值对到PushTest-info.plist文件?
    FicowShen:@麽布一漾 :blush:你试一下吧,我最近忙别的事。不行就找客服问问,他们应该都会热心解答的
  • 乌戈勒:博主您好,想问下,如果app是要提交到苹果店,使用极光推送,使用那边的服务器,极光推送这个服务是免费的吗?
    FicowShen:@乌戈勒 企业的,小公司。
    乌戈勒:@FicowShen 那博主的APP是企业的还是个人的呢?冒昧问一下
    FicowShen:@乌戈勒 嗯,我们用的是免费的
  • 止于至善乎:app 在后台的时候,收到一条消息,如果是点击 app 直接进入到 app, 怎么接收到刚才那条消息? 没有用第三方
    FicowShen:@Batac_李 :joy:是啊
    止于至善乎:@FicowShen 好的,多谢,(总会有一些老板就是不想用,这个原因已经吐血一大片)
    FicowShen:@Batac_李 我记得APPdelegate有个代理方法是和通知有关的,你可以去官方资料库找找看。
    其实很多大公司也用第三方推送的呢,服务质量也是可以的
  • c45c75ce4a5f:appdelegate的处理能贴一下代码吗?博主 :smile:
    FicowShen:@JasonLeee 不客气🤓
    c45c75ce4a5f:@FicowShen 谢谢指导! :blush:
    FicowShen:@JasonLeee 你可以参考JPUSH官方的文档,这里给你个链接: http://docs.jiguang.cn/jpush/client/iOS/ios_guide_new/ :blush:
  • pockyzhang:写的好,太清晰了~~!

本文标题:几分钟搞定iOS消息推送(APNs) 傻瓜式操作

本文链接:https://www.haomeiwen.com/subject/oelehttx.html