也可以去我的简书页面查看这篇文章

首先:

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消息推送!

iOS 消息推送(APNs) 傻瓜式教程的更多相关文章

  1. Ios 消息推送

    手把手教你做iOS推送 http://www.cocoachina.com/industry/20130321/5862.html http://www.cnblogs.com/cdts_change ...

  2. (转)iOS消息推送机制的实现

    原:http://www.cnblogs.com/qq78292959/archive/2012/07/16/2593651.html iOS消息推送机制的实现 iOS消息推送的工作机制可以简单的用下 ...

  3. 【iOS】iOS消息推送机制的实现

    iOS消息推送的工作机制可以简单的用下图来概括: Provider是指某个iPhone软件的Push服务器,APNS是Apple Push Notification Service的缩写,是苹果的服务 ...

  4. iOS消息推送机制

    iOS消息推送的工作机制可以简单的用下图来概括: Provider是指某个iPhone软件的Push服务器,APNS是Apple Push Notification Service的缩写,是苹果的服务 ...

  5. (转)iOS消息推送机制中pem文件的生成

    转自:http://2015.iteye.com/blog/1567777 以前写了一篇文章:iOS消息推送机制的实现,这篇文章中生成的是p12文件,但是php是用的pem文件,生成的方法和p12文件 ...

  6. [置顶] 手把手教你iOS消息推送证书生成以及Push消息

    iOS推送消息是许多iOS应用都具备的功能,今天在给应用加推送功能,在生成证书的过程中,发生了各种令人蛋痛的事.下面就把步骤拿出来分享下: iOS消息推送的工作机制可以简单的用下图来概括: Provi ...

  7. 了解iOS消息推送一文就够:史上最全iOS Push技术详解

    本文作者:陈裕发, 腾讯系统测试工程师,由腾讯WeTest整理发表. 1.引言 开发iOS系统中的Push推送,通常有以下3种情况: 1)在线Push:比如QQ.微信等IM界面处于前台时,聊天消息和指 ...

  8. 【转】iOS消息推送实现过程记录

    客户端代码:链接地址 服务器代码:链接地址  链接地址 这里记录下iOS消息推送实现的全过程 首先,申请秘钥. 之后进入链接地址开发者,当然你得有啊!!!!! 点击这里 如图: 下面实现创建推送证书( ...

  9. ios消息推送机制原理与实现

    本文转载至 http://hi.baidu.com/yang_qi168/item/480304c542fd246489ad9e91 Push的原理: Push 的工作机制可以简单的概括为下图 图中, ...

随机推荐

  1. PHP 流程管理

    添加新流程页面: <div> 请选择流程节点:<br /><br /> <?php session_start(); include("../DBD ...

  2. 动力节点Java培训告诉你Java线程的多功能用法

    现在的java开发可谓是八仙过海各显神通啊!遥想当下各种编程语言萎靡不振,而我Java开发异军突起,以狂风扫落叶之态,作为Java培训行业的黄埔军校,为了守护Java之未来,特意总结了一些不被人所熟知 ...

  3. 11月8日上午Jquery的基础语法、选取元素、操作元素、加事件、挂事件及移除事件

    jquery基础知识 1.jquery文件的引入,所有的js代码要写在下面那段代码下面. <script src="../jquery-1.11.2.min.js">& ...

  4. 【转载】Python与ArcGIS Engine的集成

    本文转载自Fransico<Python与ArcGIS Engine的集成>   1 在Python中调用AO类库 1.1  准备工作 本文所使用环境:ArcGIS 10.0.Python ...

  5. ArcGIS Server开发教程系列(8)ArcGIS API for Javascript-控件(小部件)

    1.     鹰眼 OverviewMap小部件用于在其关联的主地图内较清楚的当前鸟瞰图的范围.当主地图范围变化时,鹰眼图会自动在其空间内更新范围以保持和地图的当前范围保持一致,当鹰眼图空间的地图范围 ...

  6. Trie tree实践

    1.Trie树 Trie树即字典树或前缀树, 2.实践 代码实践如下: package cn.edu.buaa.trie; import java.util.HashSet; /** * @autho ...

  7. DiskFileItemFactory类的使用

      将请求消息实体中的每一个项目封装成单独的DiskFileItem (FileItem接口的实现) 对象的任务由 org.apache.commons.fileupload.FileItemFact ...

  8. Extjs 学习总结-代理

    代理(proxy)是用来加载和存取Model 数据的.开发中一般配合Store完成工作,不会直接操作代理. 代理分为两大类: 客户端代理 服务器代理 客户端代理主要完成与浏览器本地存储数据相关的工作. ...

  9. JavaScript getComputedStyle

    我们使用 element.style 也可以获取元素的CSS样式声明对象,但是其与 getComputedStyle 方法还是有一些差异的. 首先,element.style 是可读可写的,而 get ...

  10. 兼容IE6的min-width、min-height

    如果一个站是宽屏的,你左右拖动浏览器的窗口网站宽度会随着窗口的大小而改变,而浏览器窗口宽度减小到一定程度后就会出现下边的滚动条,网站宽度就不会再减小了,我们知道这一简单的功能用css的min-widt ...