1.去Apple Developer Center里创建应用的信息,指定APP ID(Bundle ID),配置里开启推送功能(Push Notifications)。

  后续步骤需要用到这个应用的包名(Bundle ID)。这个Bundle ID要和你项目里的Bundle ID完全相同!

2.添加测试远程推送的真机到Devices,这里需要获取iOS设备的UDID。

(远程推送必须是真机才可以推送!因为真机才有deviceToken。)

  

  a) 电脑连上真机,可以直接在iTunes查看,右键点击就可以复制呢!

  

  b) 不能连接真机到电脑?那可以去蒲公英 获取!

3.如果是选择了Xcode里的手动配置证书和配置文件,那么这里还要配置Provisioning Profiles,否则可以不用配置。
这个只需要选对应的APP ID,然后下载到本地,之后给Xcode配置的时候用就可以了。

4.获取证书,可选开发、生产模式的证书。同样也是要选择APP ID,然后上传CSR文件。打开钥匙串访问, 钥匙串访问-证书助理-从证书... ,然后导出一个.certSigningRequest文件到磁盘,上传这个CSR文件,然后苹果就可以给你生成.cer证书文件了。

5.如果需要使用第三方推送平台(极光环信),那么需要上传.p12文件给第三方平台。

就把对应的.cer文件下载下来,双击导入这个证书到本机。

然后打开 钥匙串访问,钥匙串类型选择:登录,种类选择:证书,就可以看到刚刚.cer对应的那个选项。

右键导出之,密码要记住,第三方平台需要用到这个密码。

     

6.上传这个.p12文件给第三方平台,给.p12改好名字,配置好密码,选择对应的开发模式。

  项目内按照第三方平台的要求,把SDK相关的内容配置好。

7.连接真机到电脑,打断点监测 - (void)application:(UIApplication *)application didRegisterForRemoteNotificationsWithDeviceToken:(NSData *)deviceToken 这个方法 。

然后真机启动应用,如果这个方法有被回调,那么就可以终结应用进程。

然后在第三方平台进行推送测试,这时候真机如果联网正常,应该就可以收到这个测试推送!

参考资料:

环信 证书配置教程文档

环信 iOS推送问题集锦

iOS APNs远程推送流程精简版的更多相关文章

  1. iOS APNS远程推送(史上最全步骤)

    /*****************************************1************************************************/ waterma ...

  2. ios远程推送和python版push server相关笔记

    今天研究了下ios的远程推送,网上的相关教程很多,做了一遍下来记录一下遇到的问题和注意事项(转载请注明) 1.证书及乱七八糟的配置 公钥:app id管理那儿的“Development Push SS ...

  3. iOS导出远程推送所需要的P12 或pem文件

    http://www.saitjr.com/ios/ios-export-remote-notification-p12-pem-file.html iOS导出远程推送所需要的P12 或pem文件 h ...

  4. IOS本地,APNS远程推送(具体过程)

    添加本地推送 ///本地添加 -(void)addLocalPushNotification:(UIButton*)sender; { NSLog(@"%s",__FUNCTION ...

  5. iOS注册远程推送消息证书后提示此证书签发者无效的解决办法

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 我们在编写关于远程推送消息的App时需要注册一个相关的证书,我 ...

  6. APNS远程推送(转发)

    /*****************************************2************************************************/ /****** ...

  7. iOS 关于远程推送(push) 的几个问题

    1  push 基本流程原理    (1)启动 app      (2)注册远程通知    (3)苹果服务器回调一个deviceToken "didRegisterForRemoteNoti ...

  8. APNS 远程推送通知 PUSH deviceToken

    服务器向客户端推送消息:      当应用程序推到后台,或者根本就没有运行(我们的代码无能为力)      如果这种情况之下,应用程序想和用户交互(传统的做法 不可能)      推送 APNS:Ap ...

  9. iOS远程推送1

    一.APNS 远程推送 1.所有的苹果设备,在联网状态下,都会与苹果服务器建立长连接. 2.长连接:就是只要联网了,就一直建立连接. 3.长连接的作用:时间校准,系统升级,查找我的iPhone. 4. ...

随机推荐

  1. MySql基本数据类型(转)

    说明:通俗的理解:1字节的8位,即1byte=8bit,而这个1byte叫做长度范围,范围的算法是使用bit去求,比如8bit的长度范围是2的8次方,但是在数据库中的类型上是有区分有符号和无符号的,默 ...

  2. Java的基本运算符

    以下内容引用自http://wiki.jikexueyuan.com/project/java/basic-operators.html: Java针对操控变量提供了一组丰富的运算符.可以将所有的Ja ...

  3. 碧砚适合佳能328 4452 ICD520 4472 4450 硒鼓4700一体机墨盒4770

  4. ArcGIS Engine 10.2 如何发布服务

    http://blog.csdn.net/arcgis_all/article/details/17376397 1 ArcGIS Engine 10.2 如何发布服务 ArcGIS Engine的代 ...

  5. Could not find leader nimbus

    运行storm ui, 然后访问storm ui 的网页的时候,死活跑不起来.后面,根据下面这篇文章的说法, 停止zookeeper 之后,删掉zookeeper 上面的storm 节点, 然后再重启 ...

  6. [RxJS] `add` Inner Subscriptions to Outer Subscribers to `unsubscribe` in RxJS

    When subscribers create new "inner" sources and subscriptions, you run the risk of losing ...

  7. 用户代码未处理 UpdateException

    无法更新 EntitySet"Project_project",由于它有一个 DefiningQuery.而 <ModificationFunctionMapping> ...

  8. 读取本地json文件,转出为指定格式json 使用Base64进行string的加密和解密

    读取本地json文件,转出为指定格式json   引用添加Json.Net 引用命名空间 using Newtonsoft.Json //读取自定目录下的json文件StreamReader sr = ...

  9. Ubuntu16.04下安装Tensorflow CPU版本(图文详解)

    不多说,直接上干货! 推荐 全网最详细的基于Ubuntu14.04/16.04 + Anaconda2 / Anaconda3 + Python2.7/3.4/3.5/3.6安装Tensorflow详 ...

  10. Redis入门教程(二)— 基本数据类型

    阅读以下内容时,手边打开一个redis-cli一起输入,输入命令敲击回车键前在心中想好你的答案,如果结果不合你的预期,请分析原因,使极大地提高学习效率.如果没有条件,每个数据类型后有代码运行结果,供你 ...