下面我来讲解一下友盟iOS的推送配置,其实友盟只是一个示例,换做其余的第三方推送服务也会适用,只是第三方的后面服务变了而已。

iOS推送(包括真机调试)所需要的步骤和文件如下:

备注:这里我将省略掉一些操作界面,如后台登录等;

一、在Identifiers中新建一个带Push Notifications服务的App IDs

1、进入添加的页面

2、填写App ID Description,这里我填写了”pushapp”

3、填写App ID Suffix,这里我填写了“com.xxx.pushapp”

4、勾选App Services的Push Notifications服务,并点击Continue按钮提交保存

这里需要注意的是,一定要勾选Push Notifications的服务,这个是推送的必选项

5、到达提交页面的最后信息确认并提交,其中界面上的Push Notifications状态为Configurable是正常现象,原因是证书没有配置好。下面配置好之后,就会显示为Enabled的状态。

提交之后,我们再选择最下方的Done按钮就全部完成,并跳转到列表界面,至此App IDs就新建完成了

二、在Devices中的iPhone添加一台进行真机调试的设备,需要把调试设备的UUID进行录入,这部我省略步骤,自行尝试,不过一定要切记,设备只有100个,输错UUID之后是不能更改的,所以添加之前要谨慎操作;

三、在Certificates中添加证书;

注意:证书添加我们需要添加4个(①开发证书、②推送开发证书、③发布证书、④推送发布证书),这里我需要特别说明的是,开发证书和发布证书是用来真机调试和打包的,而推送开发证书和推送发布证书是用来调用苹果第三方推送API所需要用到的证书,所以再我们的Xcode中选择证书的时候是选择不到这两个推送证书的;最终这两个推送证书,会在电脑导出p12证书,来供第三方平台进行接口的调用;

下面我们来详细如何生成这几个证书:

备注:前一步骤,先在本机生成一个请求证书的文件:

打开证书助理,填写电子邮箱地址,选择“储存到磁盘”,保存文件:

首先打开“钥匙串访问”对话框

选择左上角的“钥匙串访问-》证书助理-》从证书颁发机构请求证书”下拉框,出现“证书助理”对话框,填写相关信息:

选择“继续”按钮之后,出现保存到哪里的界面,我这里直接选择桌面进行保存;

到这里,我们的请求文件就新建好了,下面我们将进行证书的生成。

开发证书,也就是用来真机调试的证书

1、打开Certificates的Development的选项,选择添加界面:

2、在Development下方选择iOS App Development选项

注意:这个证书是一个账号只能新建一个,如果下次你再新建这个开发者证书的时候,这个选项是灰色的。

选择“Continue“按钮提交保存

然后选择开头所创建request文件

选择完文件提交后,就已经生成完成证书,这届点击下载按钮下载回来

我们先下载回来桌面,然后双击它,把它导入到本机,可能会输入密码,照输即可;

发布证书,用于打包ipa并上架到苹果的证书

发布证书的生成和以上的操作步骤一样,下面我将以图片的形式展示步骤:

1、

2、

注意:这个证书是一个账号只能新建一个,如果下次你再新建这个开发者证书的时候,这个选项是灰色的。

3、

4、

5、

推送开发证书,用于在本机导出p12证书供第三方平台调用苹果推送api的证书。

这个的操作步骤也是和上面一样,唯一不一样的就是类型,留意一下步骤:

1、

这个选项是可以多个,不是一个账号一个,可以根据实际需要来新建

2、

到了这一步就知道上面的类型为什么可以多个了,是对应App IDs中新建的App ID;这里我们选择刚才创建的App ID;

3、

4、

5、

推送发布证书,用于在本机导出p12证书供第三方平台调用苹果推送api的证书。

推送的发布证书操作步骤也是一样,操作步骤如下:

1、选择类型

2、

3、

4、

5、

到这里,证书全部生成完成,然后我定位到我的证书,双击进行导入,这时,证书列表如下展示:

四、在Provisioning Profiles中新建开发的配置文件和发布的配置文件

①、开发配置文件

1、

2、

3、

4、

5、

6、

②、发布配置文件

操作和上面一致,类型不一样而已;

1、

2、

3、

4、

5、

6、

以上的配置文件全部新建完成,我们双击导入即可

五、友盟的iOS工程文件配置以及真机调试

1、先去友盟的官网下载sdk demo,然后修改App key

2、

3、

然后进行真机调试,此时不会弹出任何对话框进行确认,真机调试之后会收到是否要推送的确认框,这时,你就成功了。

发布时的配置文件选择:

和前面两部是一致的,不同的只是配置文件的选择和证书不一样:

通过上面的配置,你已经成功的调试项目了,并且能注册devicetoken;

六、进入友盟的后台配置友盟的APP推送信息

1、生成推送开发证书和推送发布证书的p12文件

操作分别如下,此时

推送开发证书:

推送发布证书:

导出之后,如图所示:

2、登录友盟的推送后台,在应用基本信息出,分别上传这两个证书,并填写p12的导出密码(我这里是已经新建好了应用之后操作的,只展示重点步骤)

3、开发环境的推送:

先真机调试之后,获取devicetoken,添加测试,然后再发送测试消息

4、生成环境的推送和开发环境基本一致,不过不用添加测试设备

5、如果在发送测试消息中,提示devicetoken无效,一定是你的证书错误,请重新按照以上步骤再操作一次。

特别说明,我上面所说的发布证书是指打包成测试设备的发布证书,如果要上传到app sotre的,你的配置文件就必须选择这个类型:

友盟iOS推送配置(从真机调试到推送)的更多相关文章

  1. iOS 开发之 Xcode6 创建真机调试证书

    http://jingyan.baidu.com/article/ff411625b8141312e48237a7.html 1.登录苹果开发者中心 2.登录后的界面如图所示,如果没有最上面的两个选项 ...

  2. 在Mac系统上配置Android真机调试环境

    在Mac系统上配置Android真机调试环境 mac上配置安卓环境还说挺方便的,真机调试也比win上要好一些.win上被各种软件强行安装了xxx助手. 在mac上就了一个干净的感觉. 下载Androi ...

  3. XE6 /XE8 & IOS开发之免证书真机调试三步走,生成iPA文件并安装到其它苹果设备上

    XE6 & IOS开发之免证书真机调试(1):颁发属于自己的App签名证书(有图有真相) XE6 & IOS开发之免证书真机调试(2):连接真机并运行App(有图有真相) XE6 &a ...

  4. XE8 & IOS开发之免费证书真机调试:开发证书、AppID、开发授权profile的申请,附Debug真机调试演示(XCode7 Beta版或以上版本适用,有图有真相)

    网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 注意,苹果发布Xcode ...

  5. XE6 & IOS开发之免证书真机调试(1):颁发属于自己的App签名证书(有图有真相)

    网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 1.自己给自己颁发证书, ...

  6. iOS工具——Xcode9无证书真机调试

    入坑iOS开发这么久,一直都是在模拟器上运行,公司的项目也都有公司的开发者账号进行真机调试.但是很多时候在网上download一些demo想在真机上运行看一下效果的时候都没法成行,今天抽空好好研究和学 ...

  7. XE6 & IOS开发之免证书真机调试(2):连接真机并运行App(有图有真相)

    网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 连接真机前,请先确保真机 ...

  8. XE6 & IOS开发之免证书真机调试(3):生成iPA文件并安装到其它苹果设备上(有图有真相)

    网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 1.既然我们已经在真机上 ...

  9. iOS之Xcode 8.0真机调试运行:This ** is running iOS 10.1.1 (14B100), which may not be supported

    2016年10月份 苹果升级了iOS系统为10.1,xcode 8.0 运行会提示: This iPhone 5 (Model A1429) is running iOS 10.1.1 (14B100 ...

随机推荐

  1. AC日记——传话 codevs 1506 (tarjan求环)

    1506 传话  时间限制: 1 s  空间限制: 128000 KB  题目等级 : 白银 Silver 题解       题目描述 Description 一个朋友网络,如果a认识b,那么如果a第 ...

  2. Enem 实用方法

    前言 在项目中的多处使用到了枚举,比如:道具种类(PowerupType) 游戏任务(MissionType),记录一下有关枚举的一些方法 枚举 public enum MissionType { R ...

  3. Mobile Prototype Dev Res Collection(Unity原型开发资源储备)

    资源储备 本文针对mobile原型开发阶段的资源收集 在做移动端的开发时,当有灵感想做些东西时,若是此时缺少美术资源和可用的脚本,此刻会有些纠结,今天在Assets Store上Mark了一些移动端开 ...

  4. java 21-13 合并

    SequenceInputStream(Enumeration<? extends InputStream> e)           通过记住参数来初始化新创建的 SequenceInp ...

  5. java 21 - 8 复制文本文件的5种方式

    需求:复制文本文件 分析: 由于文本文件我们用记事本打开后可以读懂,所以使用字符流. 而字符流有5种复制的方式: 首先写main方法 public static void main(String[] ...

  6. Volley(四)—— ImageLoader & NetworkImageView

    Volley(四)—— ImageLoader & NetworkImageView ImageLoader是一个加载网络图片的封装类,其内部还是由ImageRequest来实现的.但因为源码 ...

  7. js文本框提示和自动完成

    1.模仿大型网站自动提示,就是输入“苹果”,在水果类中搜索,html代码如下: <div id="searchTips" style="display:none;w ...

  8. org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter与org.apache.struts.dispatcher.FilterDispatcher是什么区别?

    org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter与org.apache.struts.dispatcher.F ...

  9. cookie+memcached实现单点登陆

    10年的时候在iteye的第一篇文章记录了一下当时怎么实现我们系统的单点登陆.不过那个时候文章写的不好,思路也很浮躁,很难看懂,在csdn的第一篇技术博客打算重新温顾一下当时实现单点登陆的思路.先来看 ...

  10. css margin 参数

    margin 参数 margin: (1)一个参数值,将用于全部的四边. (2)两个参数值,第一个用于上-下,第二个用于左-右. (3)三个参数值,第一个用于上,第二个用于左-右,第三个用于下. (4 ...