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

首先:

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. 【Linux】使用update-alternatives命令进行版本的切换

    引言 在Redhat中也有此功能,用于切换不同版本. 在Debian系统中,我们可能会同时安装有很多功能类似的程序和可选配置,可能会出现同一软件的多个版本并存的场景.比如像是一些编程语言工具,一些系统 ...

  2. 如何自学 Java 开发

    如何自学 Java 开发? 568赞同反对,不会显示你的姓名 李艾米IT路上学习 568 人赞同 Java Web前端技术 HTML 入门视频课程 1 HTML 简介 2 HTML基本结构[ 3 HT ...

  3. 网络基础之IPv4、网线、

    =========================================Internet是一个圈子,进去这个圈子就要有相应的身份,就像我们去篮球场打球,首先得是个"人"才 ...

  4. 原生JS常用代码汇总

    数组相关 var codes = new Array( ); //创建数组codes.length //数组长度 动态插入数组 codes.push(value);

  5. 为什么为 const 变量重新赋值不是个静态错误

    const 和 let 的唯一区别就是用 const 声明的变量不能被重新赋值(只读变量),比如像下面这样就会报错: const foo = 1 foo = 2 // TypeError: Assig ...

  6. 【piu~】制作一只变形小鸡~

    在http://codepen.io/pick上看到的,,,具体是谁忘了,反正我只截了最萌的一段,作者越改越不萌ಥ_ಥ 谷哥哥随便一搜就有很多好玩的,度娘就...(  ̄ ▽ ̄)o╭╯☆#╰ _─﹏─) ...

  7. Github.com上有哪些比较有趣的PHP项目?

    链接就不贴了,可以在github上进行搜索.这里就不列举 symfony.laravel 这些大家都知道的项目了.只列举比较有意思的. swoole, C扩展实现的PHP异步并行网络通信框架,可以重新 ...

  8. Javascript闭包深入解析及实现方法

    1.什么是闭包 闭包,官方对闭包的解释是:一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分.闭包的特点:1. 作为一个函数变量的一个引用,当函数返回时 ...

  9. js 阻止事件冒泡

    function stopBubble(e) { //如果提供了事件对象,则这是一个非IE浏览器 if ( e && e.stopPropagation ) //因此它支持W3C的st ...

  10. (原)android的alertdialog中加入edittext但是不弹出软键盘等问题的解决与原因

    摘要:alertdialog中加入edittext但是不弹出软键盘等问题网上有很多不管用的解决方案, 本文意在给出更有效的解决办法,并初步探究其原因 正文 在对话框中插入文本框是十分常见的需求 通常我 ...