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

首先:

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. A:手把手教Wordpress仿站(基础)

    安装源码 需要服务器有php环境(PHP,Mysql,Apeach/Ngnax) 我用的主机宝(环境一键安装工具)   打开后台突然出现这种情况 Briefly unavailable for sch ...

  2. JQuery常用代码汇总

    获取<input />的value $("#id").val( ); 标签间的html $("#id").html('<tr><t ...

  3. [NHibernate]NHibernate.Tool.hbm2net

    系列文章 [Nhibernate]体系结构 [NHibernate]ISessionFactory配置 [NHibernate]持久化类(Persistent Classes) [NHibernate ...

  4. PG 函数的易变性(Function Volatility Categories)

    此概念的接触是在做分区表的时候碰到的,分区表按时间字段分区,在查询时当where条件中时间为now()或者current_time()等时是无法查询的,即使进行格式转换也不行,只有是时间格式如‘201 ...

  5. JavaScript 冒泡排序和选择排序

    var array = [1,2,3,4,5]; // ---> 服务 //效率 ---> 针对一个有序的数组 效率最高 //标志 true false for(var j = 0; j ...

  6. UIScrollView的代理(delegate)

    很多时候,我们想在UIScrollView正在滚动 或 滚动到某个位置 或者 停止滚动 时做一些特定的操作 要想完成上述功能,前提条件就是能够监听到UIScrollView的整个滚动过程 当UIScr ...

  7. Javascript中闭包问题(转载)

    学习Javascript闭包(Closure)   作者: 阮一峰 日期: 2009年8月30日 闭包(closure)是Javascript语言的一个难点,也是它的特色,很多高级应用都要依靠闭包实现 ...

  8. PHP中global与$GLOBALS['']的区别

    +++ 探讨(一)+++++++++++++++++++++++++++++++++++++++ 很多人都认为global和$GLOBALS[]只是写法上面的差别,其实不然. 根据官方的解释是 $GL ...

  9. Spring中集合类型属性注入

    我们都知道如何去注入普通属性的值,非常简单,那么我们如何去注入开发中常见的集合类型的属性了,别急,往下看. 这里将介绍如何给Map list set Array Properties 这些属性注入值. ...

  10. webview滑动事件 与内部html左右滑动事件冲突问题的解决办法

    最近在做个混合app , 用html做页面,然后通过webview嵌套在activity中,效果是这样: 开始还是比较顺利,增加了菜单退出按钮,返回键页面回退功能,页面加载显示加载图标(在app端实现 ...