苹果证书这套东西真是能把人烦死。今天试着从头梳理一下,以后再不纠结这块了。
目前开发的项目用到了三个证书:真机调试,苹果推送,以及发布到app store。在介绍这三个证书怎么获取之前,先说说准备工作。首先要有苹果开发者账号,在developer.apple.com就可以申请,需要支付$99每年的费用。然后需要在mac电脑上生成一个名为 CertificateSigningRequest.certSigningRequest 的文件(翻译过来应该叫“证书签名”吧)。这个文件通过 钥匙串程序-钥匙串访问-证书助理-从证书颁发机构请求证书 获得。邮箱可以随便写,然后勾选保存到磁盘就行。这个文件是后面生成各种证书的基础。
真机调试
某位大神给出了真机调试所需文件的概述:
“苹果真机调试需要证书(Certificates)和描述文件(Provisoning Profiles)
1、证书(Certificates) 通过苹果自带的钥匙串生成后上传到Developer中再生成来完成
2、描述文件(Provisoning Profiles) 生成描述文件时需要选择App ID(包含Bundle,必须与你程序的bundle保持一致,为了能同时调试多个程序,一般bundle填写时末尾用*号代替,后文会具体说明)选择证书(Certificates)及设备(Devices)三样东西
真机测试必要条件:App ID,证书,描述文件,设备,及调试程序的Bundle Identifier保持一致”
OK,我们开始真机调试。再此之前,我先删除我的开发者中心里的所有Certificates, identifiers, 以及provisioning profile,为了写这篇教程我也真是拼了。当然devices我没有删除,因为这跟其他文件没有关系。开发者中心:
https://developer.apple.com/account/ios/profile/profileLanding.action
首先,我们来添加App ID,它是你的app的唯一标示,App ID有四段描述分别是:name,prefix,ID,以及application service。name就是你的app的名字,prefix是一段神秘的字符,ID是com.Alfred.应用名字(这是最关键的,它就是你的app ID),application service是你的app需要开启的苹果服务。
接下来需要添加设备。把你的iphone或者iPad或者iPod等连上电脑,在iTunes里就会看到他的UDID,复制这个字符串,在开发者中心的device里添加一个设备,填写这个UDID就可以。
接下来,添加证书(certificates)。选择certificates-development,选择iOS app development,然后上传已经准备好的CertificateSigningRequest.certSigningRequest文件。开发者中心会为你生成证书文件(certificate),下载它,然后双击安装。
接下来,添加描述文件(provisioning profile)。选择provisioning profile-development,选择iOS app development,再选择你刚添加的App ID,选择你刚刚添加的证书,再选择你已经添加的设备(device)。最后编辑这个描述文件的名字。然后下载,双击安装。
最后,检查你的Xcode里,此项目的.plist文件中bundle identifiers是否跟你的app ID一致就好了。然后run your app on your device
发布到app store
1.首先需要发布(distribution)证书和描述文件。
在certificates-distribution下新建一个证书,选择App Store and Ad Hoc,然后上传CertificateSigningRequest.certSigningRequest,生成证书文件。下载,双击安装。
接下来,生成证书对应的provisioning profile(描述文件)。在provisioning profile-distribution中新建一个描述文件,选择app store。然后选择自己的App ID,选择与之对应的证书。然后填写profile name,需要与App ID的后缀,也就是你的程序名称一样。然后下载,双击安装。
2.然后需要打包应用成ipa文件。
打包的步骤:
1)把模拟器设置成iOS Device,在product-scheme-edit scheme中,设置Run和Archive为release。
2)把Targets ---- Build Setting ---->>> Skip Install ---->Release 设为 No
3)点击product-archive,应该就能success了,然后organizer-archive会自己弹出。如果弹不出就去window-organizer中自己打开。
4)如果第3步走不通,就看看project-build settings-code signing是不是识别了你的证书。没识别就自己手动修改一下。
5)在organizer-archive中导出ipa
6)在Xcode的程序包里有一个application loader的应用,用来上传ipa,但是如果你是Xcode 6,建议不要用它自带的那个3.0版的application loader,去网上下一个2.9版本的。
7)打包且上传结束。
8)如果你之前上传过一次,那么这次可能会遇到version重复不能上传的问题,可以参考这个文章解决http://stackoverflow.com/questions/25680604/error-itms-9000-redundant-binary-upload-there-already-exists-a-binary-upload
参考:
目前最清晰的真机测试的文章:http://my.oschina.net/joanfen/blog/167730#OSC_h2_1
发布证书的文章:http://my.oschina.net/joanfen/blog/133624
转载于:https://my.oschina.net/u/1024573/blog/412434