ios申请真机调试( xcode 5)详细解析
第一步:申请“开发证书”
进入苹果开发者99美元账号:
选择:Certificates, Identifiers & Profiles
关于 Certificates,Identifiers,Profiles 的介绍请看 ”iOS申请证书,Certificates, Identifiers &Profiles 简介“
选择:Certificates
选择:Development,点击”+“
可以创建一个证书,详细步骤请参照 ”申请证书“,在这里就不在重复了
一般说我们开发ios应用,必须有两个证书,”开发证书“、”发布证书“,在电脑上生成了一次这两个证书以后,不需要每一次都添加证书,所以添加证书的步骤在这里不在重新叙述。
如果你在开发者网站已经申请不了证书了,可以选择导出p12文件,请参照“导出P12”文件
第二步:添加App IDs
选择 “Identifiers”的 “App IDs”,点击“+”
出现以下界面:
-
App ID Description 是一个App ID的描述,就是一个名字,这个名字可以随便取
-
App ID Prefix 苹果已经帮我们填了,不需要我们填,可以看出,它是一个团队的ID
下一步,选择 App ID Suffix
App ID Suffix 有两个选项:
-
Explicit App ID :顾名思义,这里要填一个明确的 App ID,
什么意思呢?可以这么来解释:我们做项目时的Bundle Identifier (Bundle ID)是用来标示我们的app的。我们的App ID也是用来标示我们的app的。这两个有什么联系呢?Explicit App ID 就是要我们确定一个唯一的 Bundle ID,用来标示我们的 app,使它有一个固定的身份。可以发现,当提交应用到苹果时,如果我们一开始没写 Explicit App ID,苹果会自动帮我们生成一个与我们发布时填的一样的 Bundle ID 到我们的 App ID中。
填写 Explicit App ID 的格式为:com.company.appName
-
Wildcard App ID:顾名思义,这里要填一个通配符的 App ID 。意思就是,我们只需要填一个在所有应用都能试用的 App ID 就好了。
填写 Wildcard App ID 的格式为:com.company.*
申请真机调试的时候,不是为了某一个应用去调试,而是为了所有的应用去调试,必须能适应每一个app,所以我们选择 Wildcard App ID。
com.company.* 的company 一般写公司的名字,也可以按需要写
可以发现,选择 Explicit App ID 会比 Wildcard App ID 多几个服务选项可以选,不过我们是真机调试,所以无所谓,将能选的勾上,选择“Continue”就好。
看到如下界面,点击“Submit”后就可以生成App ID了
第三步:申请设备
如图,点击“+”,一个99美元账号只能申请100个设备。
Name 自己取一个设备的名字,UDID约等于设备的身份证,可以在xcode中查看
查看UDID
打开xcode,选择“Windows” 的“organizer”:
选择设备看到 “identifier”,这个就是我们设备的 UDID,将其复制,可以填入上上图显示的 UDID中。
当你的机子第一次用于开发时,可以看到,显示的灯是“灰色”的,可以点击“use for developer” 来作为开发机。点击了“use for developer”后,可以发现你的灯变成了黄色的了。
如果一个手机本来就是开发机(一个手机可以安装多个开发用的描述文件)或者越狱的手机,那么它刚插进去就是绿灯。但是绿灯并不代表就能用,必须安装相适应的描述文件。如图就是一个没有安装相应描述文件的开发机。
填好 name 和 UDID后,点击continue 就可以看到如下界面,点击“Register”就可以在苹果上登记了。
第四步:申请描述文件
如图点击 “+”
选择 “iOS App Developer”,然后“Continue”
这里选择我们刚刚生成的 App ID,选好后,点击“Continue”
这里选择一个开发证书,有两点要注意:
-
这个证书是我们刚刚自己在本机与苹果开发者网站生成的 开发证书 “Development certificate”
-
如果不是刚生成的,这个证书必须在本地的mac的钥匙串中存在(带密钥的证书,不带密钥的依然无效)
如果不想自己在重新生成证书,用别人生成的证书,可以从别人的电脑中导出p12文件,可以参考:如何导出p12文件
选好证书以后,点击“Continue”
选择设备,设备可以选择全部设备,也可以按需选择你需要的设备:
这里给我们的描述文件取一个名字,这个名字在以后的xcode中是看得到的,所以可以取一个好辨认的名字。取好名字后,选择“Generate”生成描述文件。
生成好描述文件后,选择“Download”,双击进行安装(安装后在xcode中可以查看)
-
安装成功后,以前没作为开发机的手机会变成绿色的(以前就是开发机和越狱的手机一直是绿色的,但是不重新申请符合证书的真机调试任然是不能真机调试的)
-
点击“Provisioning Profiles” 看到 “Valid profile” 就是成功安装的意思。
如果没有安装成功,一般是证书或者描述文件的问题,看看证书是不是从自己的机子上生成的,描述文件的配置信息(是否和你的本机存在的带秘钥的证书相匹配,你添加的设备是否包含你现在选择调试的设备)等,如图第一个警告是因为没有证书与描述文件相匹配出现的
配置好后,还不是绿灯,则考虑问题:
-
设备版本高于XCode所能支持的版本,如XCode4.6.3,能支持的最高版本未iOS6.1,如果你的设备系统大于等于iOS7以上,此时需要 更新至XCode5; 再如:XCode5 不支持ios7.1,如果想开发ios7.1,必须将xcode5 升级到 xcode5.1以上版本;
例如:
在真机调试时,不要忘记设置这两个,否则调试失败:
这个必须填:之前写Wildcard App ID 的内容. app的名字
设置好这两个之后再点击运行。
第二篇,结合的看。。。。
OS应用的真机调试
必须条件:99美元的帐号,没有这个就不用再往下看了。
首先,登录到http://developer.apple.com/devcenter/ios/index.action,如果已经购买了iPhone Develop Program(iDP),登录进去后,页面右上角会看到如下图所示的页面:
点击第一项:iOS Provisioning Portal,然后会看到下面的页面:
点击进入Certificates,然后看到如下所示的页面:
点击图中的click here to download now,这会下载下来一个AppleWWDRCA.cer文件,这是调试以及发布iOS应用必须的一个文件,这个文件只要下载一次就够了,即使你有多个iDP,无论是调试程序,还是发布程序,也只需要一个。如果已经下载过,那么就不用再下载这个了。
下完之后,双击这个文件就会装到自己的机器上了。然后打开Keychain Access,中文名叫钥匙串访问,然后你会看到下面的页面:
这代表你已经装进去了。
下面,我们打开钥匙串访问的菜单,如下图:
这将会打开如下图所示的页面,按照图示内容进行填写:
点击继续:
点击存储:
然后,点击继续,这时就会在你的桌面上生成一个CertificateSigningRequest.certSigningRequest文件。
接着点击下图中的Request Certificate按钮:
这时,会出来下面的页面:
点击选择文件,选择刚刚创建的CertificateSigningRequest.certSigningRequest文件,然后点击Submit。
如上图所示,这时你的证书是Pending状态,刷新一下网页,现在处于如下状态:
这时,点击Download按钮,会得到一个developer_identity.cer文件,双击这个文件,然后再看看你的钥匙串访问,会是如下的结果:
切记,这时应该能看到上图所示的钥匙状的东西,如果没有的话,是不可能可以调试的。
接着,打开Devices那一项,出来如下图所示页面:
点击右上角的Add Devices,出现下图所示页面:
给自己的设备取个名字,例如:iPhone,Device ID就是设备的机身号(40位),机身号可以通过Xcode的window菜单下的Organizer来获得。填写完了以后,点击Submit就可以了。
99美元的帐号允许绑定100台移动设备。
接着,点击App IDs,出现如下图所示页面:
点击右上角的New App ID,出现如下图所示页面:
填写完后,点击Submit即可。
注意:在Bundle Seed ID一栏,苹果提供了Team ID的概念,如果你要和其他应用程序共享钥匙串,可以选择一个已经存在的Bundle Seed ID。
接着,点击Provisioning,这一步是将上面的开发设备、移动设备以及应用绑定在一起,出现如下图所示页面:
点击右上角的New Profile,出现如下图所示页面:
填完后,点击Submit即可。
然后,点击列表中的Download,这时,你会得到一个JXT.mobileprovision的文件,这个文件是要装到手机里面的。
打开Xcode的window菜单下的Organizer,将JXT.mobileprovision文件添加到Provisioning里面。
这时,打开你的设备,你会发现在设置->通用->描述文件里面有个东西,那就是你的证书了。然后再双击JXT.mobileprovision这个文件,这样你的Xcode就被激活了,这时查看Users\用户名\Library\MobileDevice\Provisioning Profiles下面,应该多了一个
XXXXXX-XXXXXX-XXXXX-XXXXXX.mobileprovision的文件。
接着,打开你的工程,并打开plist文件,将里面的Bundle identifier改成com.aurora.jxt。
然后,打开工程的info,并按照下图进行设置:
如果你想选中的那一项是灰色的,那么你前面的某些流程一定出了问题。
然后,Targets的info,按照下图进行设置:
最后,选中Device Debug,然后Build,大功告成了。
连接移动设备,打开Xcode的window菜单下的Organizer,如果连接了移动设备,会在Device中显示相应的设备,点击Use Device for Develop,设备中可以选择相应的Device,并可以在该设备下看到已注册的provisioning文件。
iPhone SDK的版本必须和真机版本一致,版本不兼容的话会出现找不到设备之类的错误。