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. java.net.URISyntaxException的解决办法

    java.net.URISyntaxException的解决办法 近日在用HttpClient访问抓取汇率时,为了省力,直接采用 String url = "http://api.liqwe ...

  2. 数据库(Mysql)背后的数据结构-学习

    来吧,用这三篇文章夯实对Mysql的理解吧. 关于数据库索引及其优化,更多可参见此文:http://www.cnblogs.com/pkuoliver/archive/2011/08/17/mass- ...

  3. LightRoom操作快捷键

    1.隐藏与释放上下左右面板:F5.F6.F7.F8.分别对应上下左右面板.tab键可以隐藏与释放左右面板,shift+table可以同时隐藏与释放所有面板,T键隐藏与显示工具栏 2.图库与修改照片模块 ...

  4. 一起talk C栗子吧(第九十六回:C语言实例--使用共享内存进行进程间通信二)

    各位看官们.大家好,上一回中咱们说的是使用共享内存进行进程间通信的样例,这一回咱们接着上一回内容继续说使用共享内存进行进程间通信. 闲话休提,言归正转.让我们一起talk C栗子吧! 我们在上一回中介 ...

  5. vue自定义轮播图组件 swiper

    1.banner 组件 components/Banner.vue <!-- 轮播图 组件 --> <template> <div class="swiper- ...

  6. Unity5的关卡切换

    本文章由cartzhang编写,转载请注明出处. 全部权利保留. 文章链接:http://blog.csdn.net/cartzhang/article/details/51055584 作者:car ...

  7. [LeetCode][Java] Remove Duplicates from Sorted List II

    题意: Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct  ...

  8. 32位与4G内存限制

    32位有4G内存限制,好像人所共知.但这个32位是指32位的CPU还是32位的操作系统? 答案是,都是.内存限制,是操作系统和硬件(CPU,也许还有内存控制器)共同制约的.CPU对应的是寻址物理地址, ...

  9. Library Project里面使用Case语句判断R.id值报错。case expressions must be constant expressions

    原文地址:http://blog.csdn.net/wchinaw/article/details/7325641 在一般的Android项目里R里面的资源声明看起来是这样的: public stat ...

  10. 【bzoj2462】[BeiJing2011]矩阵模板

    #include<algorithm> #include<iostream> #include<cstdlib> #include<cstring> # ...