ios7.1.2怎么实现ios qq共存版qq推送

今天由本菜鸟给大家做一个简单的IOSApp消息推送教程!一切从0开始,包括XCode6, IOS8, 以及苹果开发者中心最新如何注册应用,申请证书以及下载配置概要文件,相信很多刚开始接触ios的人会很想了解一下。(ps:网上看了一下虽然有很多讲述推送的好教程,我也是看着一步步学会的,但是这些教程的时间都是去年或者更早时期的,对引导新手来说不是很合适)
首先第一步当然是介绍一下苹果的推送机制(APNS)咯(ps:其实每一篇教程都有),先来看一张苹果官方对其推送做出解释的概要图。
Provider是给你手机应用发出推送消息的服务器,而APNS(Apple Push Notification Service)则是苹果消息推送服务器。你本地的服务器当需要给应用推送一条消息的时候,先要将消息发出到苹果推送服务器,然后再由苹果推送服务器将消息发到安装了该应用的手机。
接下来再看一张解释图:
根据上图的逻辑我来给大家解释一下:
1.你的IOS应用需要去注册APNS消息推送功能。
2.当苹果APNS推送服收到来自你应用的注册消息就会返回一串device token给你(很重要)
3.将应用收到的device Token传给你本地的Push服务器。
4.当你需要为应用推送消息的时候,你本地的推送服务器会将消息,以及Device Token打包发送到苹果的APNS服
5.APNS再将消息推送给目的iphone
1.从证书颁发机构颁发证书
打开你mac的钥匙串访问:&然后点击钥匙串访问
随后它会弹出一个窗口 用户电子邮件信息
就填写你苹果开发者账号的名称即可(应该是一个邮件名称),点击保存到磁盘的选项,点击继续,显示如下
点击存储,文件名为:CertificateSigningRequest.certSigningRequest 随后将他放在一个文件夹中我们取名push吧!
访问苹果开发者网址:/
选中MemberCenter选项,进入登陆页面,用你的苹果开发者账号登陆,过一会网页就会自动跳转到下图。
点击红色所选部分
内容进行下一步的操作。
选择Certificates选项,设置证书,如图所示先解释一下
Development选项的作用顾名思义就是用来作为开发使用的证书,Production选项则
是用来发布产品使用的,名称很陌生是不是,之前的开发者网页是没有这一选项的,可能是苹果把他修改了,用这个名称更加能让人
理解吧(字面上解释就是产品么)。两个选项生成证书的步骤是一样的,现在我们使用开发者的选项进行证书的制作,步骤如下:
选择Development选项
点击上面的加号选项,
选择APNS选项(开发么当然是在沙盒环境下了,模拟真实情况),然后Continue
这个AppID我们在下一部分讲如何生成,现在我用的是已经生成好的一个应用ID,继续Continue
这边就要选择在钥匙串访问环节下载下来的CertificateSigningRequest.certSigningRequest文件了,选择并生成
点击下载,得到aps_development .cer,保存到push文件中去。
新建一个AppID,选择网页上的AppIDs,然后点击右上角的 “加号”
App的取名只要按照苹果要求的就可以了
然后BundleID是比较重要的,在提交审核以及测试(苹果的TestFlight)和付费环节都需要用到,也只需按照苹果要求来写就好了。
接下来就是对你的应用需要使用苹果的哪些服务进行选择就行了,例如广告,游戏中心,推送,付费等等情况。
最后选择“Submit”选项,在下一个界面中选择“done”选项,这样我们设置AppID的步骤我们就完成了。
第五部分:生成Provisioning Profiles
这个配置概要文件分为两种,一种是为开发使用的,还有一种则是为发布到appStore上面。
创建发布版的ProvisioningProfile与开发版的流程相同,点击Development然后点击右上角的加号
会进入选择何种配置概要文件的界面
我们现在时测试,所以选择“IOS App Development”的选项,在下面的Distribution发布选项中有两个选择,“App Store”以及“Ad hoc”,你可以根据下面的描述
选择你发布所需的选项。点击Continue进入下一步。
选择你上一步创建的AppID,点击Continue 进行下一步
选择你的开发者账号,Continue进行下一步
在这一步上选择你的设备(你只有在这一步上勾选了你的设备,你才能在设备上用这个签名进行调试)。关于如何将你的设备号添加进去也是非常
简单的,选择左侧的&Devices&,然后点击右上角的加号,在随后出来的页面上添加你设备的UUID(在XCode中可以查看到)以及name( 可以随便取,自己看的懂就行)
然后Register一下,照着流程走到最后一步就完成了。
好咋们继续回到上面的Provisioning Profile配置环节,当你选好了你的设备后点击“Continue”进入下一页,
输入一个文件名(最好是起的能看懂是干嘛的,当然也可以随便起),点击“Generate”进入下一个页面,在这个页面中就会有一个下载按钮让你下载这个文件,
我们把它下载下来放在Push文件夹中。
好了,前期的准备工作都已经做完了,现在让我们开始推送吧!(吼吼)
首先双击我们生成的 “aps_development .cer” 文件,进入钥匙串访问,找到我们的专用秘钥(根据在第二部分中从证书机构颁发证书操作中填写的常用名)
我在第二部分填写的是“silicon”,由于换了一台mac之前安装的没有了,之前没有截图,所以随便找了个图给大家看一下,凭大家的聪明才智应该不难理解吧。
然后右击导出,会弹出如下所示的图。
将他存储到push文件夹中,命名为“push.p12”,在这一步中导出会让你输入密码并验证,你可以自定义一个密码,例如abc123。
现在push文件夹中应该有几个文件“aps_development .cer” ,&push.p12&,“CertificateSigningRequest.certSigningRequest”以及刚才下下来的配置概要文件。
接下来我们打开终端将他们生成.pem文件
1.把aps_development .cer文件生成.pcm文件,cd到push文件夹下
2.把push.p12文件生成为.pem文件
上边输入的密码则是你导出证书所设的密码,即abc123.接着还会让你输入.pem文件的密码,还是使用abc123好了,防止混淆。
这样我们在push文件夹中就又得到了两个文件,PushChatCert.pem和PushChatKey.pem。
3.把PushChatCert.pem和PushChatKey.pem合并为一个pem文件,
在push文件夹中又多了一个ck.pem文件,以上我们把需要使用的文件都准备好了
接下来就要测试一下啦,是不是很激动~
为了测试证书工作的状况,我们可以使用“telnet gateway.sandbox. 2195”来检测一下,如果显示
则表示成功了。
然后,我们使用我们生成的证书和私钥来设置一个安全的链接去链接苹果服务器
在终端输入如下命令:openssl s_client -connect gateway.sandbox.:2195 -cert PushChatCert.pem -key PushChatKey.pem
需要输入密码(abc123 我们刚才所设置的)。
然后他会返回一系列的数据,这里我就粘贴一部分啦:
CONNECTED()
depth=1 /C=US/O=Entrust, Inc./OU=www.entrust.net/rpa is incorporated by reference/OU=(c) 2009 Entrust, Inc./CN=Entrust Certification Authority - L1C
verify error:num=20:unable to get local issuer certificate
verify return:0
Certificate chain
。。。。。(省略)
。。。。。(省略)
。。。。。(省略)
& &&Start Time:
& & Timeout & : 300 (sec)
& & Verify return code: 0 (ok)
测试就到这里啦。。。
1.建立推送项目
在appdelegate.m中加入以上代码,
由于ios8的推送跟ios7及以下的不一样,所以需要加判断来注册消息推送。
会接收来自苹果服务器给你返回的deviceToken,然后你需要将它添加到你本地的推送服务器上。(很重要,决定你的设备能不能接收到推送消息)。
这个函数则是当设备接收到来自苹果推送服务器的消息时触发的,用来显示推送消息。
当注册失败时,触发此函数。
2.PHP服务端
将simplepush.php这个推送脚本也放在push文件夹中
deviceToken填写你接收到的token,passPhrase则填写你的ck.pem设置的密码。
此刻就是见证奇迹的时候了
使用终端进入到push文件夹,在终端输入 php simplepush.php
若显示以上提示则表示推送成功了。
附上一张成功图。
推送就到这边吧!
感谢这篇博客的指导:
以及原著博主: Hello杰少
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:313次
排名:千里之外之前有过很多方法安装多个QQ,比如安装CI版本,安装日本版之类,挂Q数量不多,而且有版本差异,更甚者出现各种问题,毕竟没有官方版本的稳定。
用此方法自己手动修改,无数量限制,理论上可以开N个QQ,如果你不嫌设备承受不起的话,而且每一个都是相同的版本。
本方法的原理是:iPhone程序都有一个识别码,我们再安装识别码相同的程序时,将会覆盖原有的程序,通过修改程序文件的识别码,即可实现多个相同程序同时安装。
已修改好的iPhoneQQ2013共存版下载:
需要用到:好压(其它解压软件也可代替,但是这个好用)
以最官方最新内测版QQ2013,版本号v3.0.0.4080为例,下载地址:
部分原图莫名其秒丢失了!!!
将下载回来的iPhoneQQ2013安装包IPA文件后缀名改为ZIP,使用“好压”打开文件;
打开后双击Payload文件夹进入,再双击QQ.app文件夹进入,找到Info.plist文件;
直接将此文件拖到桌面或者其它文件夹中,使用记事本打开,找到如下内容:
&key&CFBundleIdentifier&/key&
&string&com.tencent.mqq&/string&
其中的com.tencent.mqq便是程序的识别码,将识别码修改,比如修改如下:(加的内容一点要加个点,否则能安装但无法登录,出现签名错误)
&key&CFBundleIdentifier&/key&
&string&com.tencent.mqq.a&/string&
另外为使程序安装后与原来的名字不一样,方便区分,需要修改程序名,找到如下内容:
&key&CFBundleDisplayName&/key&
&string&QQ&/string&
修改如下:
&key&CFBundleDisplayName&/key&
&string&QQ2013&/string&
好了,保存文件并关闭,再用好压打开QQ_v3.0.0.4080.zip\Payload\QQ.app,将Info.plist拖入,覆盖原有文件,再将QQ_v3.0.0.4080.zip后缀修改QQ_v3.0.0.4080.ipa,修改好后便可使用iTools或PP助手类软件将程序安装到iPhone。如需安装多个,只需修改不同的识别码和程序名字便可。
此方法同样适用于其它程序,如微信等,有需要的也可在下面回复你需要共存的程序及版本,有空帮你修改。
未越狱的如何修改呢?这样只有越狱的能装而已,同步推上有共存版是如何做的?
个人兴趣博客,没有太大的目的,分享一些自己有兴趣研究或关注的内容!
云服务器:
加速服务:ios7.1.2的QQ消息推送问题_iphone4s吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:701,141贴子:
ios7.1.2的QQ消息推送问题收藏
怎么不能推送通知?设置是这样的但是我的看了
神牛摄影器材--为专业摄影者打造,你值得拥有!
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或

我要回帖

更多关于 ios qq共存版 的文章

 

随机推荐