- 真机调试简介
- 什么是真机调试
- 为什么要运行在真机上,运行在模拟器上不行吗?
- 怎样做真机调试
- 真机调试需要的角色
- Xcode7.0之前需要什么角色
- Xcode7.0之后需要什么角色
- Xcode7.0之前真机调试步骤
- Xcode7.0之后真机调试步骤
什么是真机调试
所谓真机调试就是将Xcode编写的App运行在真机上。
为什么真机调试
- 部分功能需要硬件支持,模拟器是不支持的,如:
- 传感器:磁力计、陀螺仪、距离传感器等
- 特定功能:拍照、打电话、发短信、蓝牙等
- 真机的环境和模拟器的环境是不一样,模拟器是使用电脑的环境, CPU、Memory、Disk、Network 这些和真机环境都不一样,有些bug可能会在特定的环境才会出现,比如网络非常慢,内存特别小的时候,可能在模拟器上不会有bug,在真机上就有可能出现bug
- 使用真机开发比使用模拟器体验更好
真机调试的角色:人、电脑、App、 真机
哪些【人】在哪台【电脑】上使用那些【真机】运行哪些【App】。
Xcode7.0之前对真机调试限制比较多,并不是任何人在任何电脑上使用任何真机运行任何App的,即有4大限制:
- 限制人
- 限制电脑
- 限制App
- 限制真机设备
Xcode7.0之后只需要【Apple ID】即可,苹果根据Apple ID会自动生产对应的证书文件。在操作上相对比较简单。
Xcode7.0之前真机调试步骤
- 限制人- 开发者账号
- 限制电脑
- 限制App
- 限制真机设备
- 根据前三项生成描述文件
- 检查Bundle Identifier
- 配置Build Settings的代码签名标识Code Signing Identity 和 描述文件 Provisioning Profile
申请开发者账号
限制人,不是任意人都可以做真机调试的,真机调试必须拥有开发者账号,称为开发者账号是要交钱的,开发者账号分为三类,不同类型的账号拥有的功能不一样:
- 个人账号($99 = ¥688RMB)
- 功能:真机调试、打包测试、程序发布
- 优点:申请速度快,1~3个工作日即可
- 缺点:1. iTunes查看的是个人信息,无法间接为公司宣传; 2. 无法创建管理自己的开发团队
- 公司账号($99)
- 功能: 真机调试、打包测试 、程序发布
- 优点:1. iTunes可以查看企业信息,间接为公司宣传; 2. 可以管理自己的开发团队
- 缺点:1. 申请比较复杂,需要“邓白氏”认证; 2.申请周期比较行(连同“邓白氏编码”申请,最好准备30天左右的时间)
- 企业账号($299)
- 功能:真机调试、打包测试
- 优点
- 可以在企业内部随意安装到苹果设备,不需要经过AppStore审核
- 可以创建和管理自己的开发团队
- 版本更新迭代比较快,不需要审核
- 缺点
- 申请复杂,需要“邓白氏”认证
- 申请周期比较长
- 不能使用此证书将App 发布到AppStore上
个人账号和公司账号的功能都一样,而企业账号不能发布,企业账号有特定的使用场景,一般都是针对特定人群使用,只在企业内部安装,无需发布到AppStore上供人下载。
公司账号和企业账号都可以创建和管理自己的开团团队,为什么要创建自己的开团团队呢?
首先不能将开发者账号给开发人员,因为开发者账号权限太大,所以要维护一个开发团队,开发团队将邀请每个开发人员(AppleID)做为成员,然后开发者使用自己的Apple ID做真机调试。邀请时会给开发者发送一封邮件,然后同意邀请即可。
经验:尽量不要使用代理公司去申请邓白氏编码,原因是,花钱多,而且申请下来的“邓白氏编码”不一定和苹果服务器数据库内的一致,最终不可用,浪费时间也浪费钱。最正确的做法是直接和苹果客服联系,他们会告诉你申请的具体流程,都需要提交哪些资料,客服电话:400 670 1855
创建Apple ID
打开网站 https://appleid.apple.com/cnsdf
创建您的Apple ID,填写资料—>继续 —-> 此时邮箱会收到验证码,然后输入验证码点击验证即可
加入开发者计划
https://developer.apple.com —–> Account—–> Sign in—-> Join the Apple Developer Program—->enroll(注册)—- 开始注册—-> 选择开发者账号类型(Single Person Business个人业务)continue—>填写个人资料—>continue–>Purchase—> 填写资料继续—>立即下单
相关文章: http://blog.csdn.net/a283127993/article/details/45828175
限制电脑、App、真机设备、生产描述文件具体操作步骤:http://blog.csdn.net/vbirdbest/article/details/51887399
限制电脑
Certificates, Identifiers & Profiles
Certificates:就是用来限制电脑的,每台电脑是不一样的,最终生成一个.cer文件
限制App
Identifiers–App IDs:Bundle ID是用来限制App的
限制真机设备
Devices:就是用来限制哪些真机设备可以真机测试的,注意总共可以添加100次,是次数而不是个数,每年有一次机会清理不需要的设备,剩余次数将增加清除设备的个数
描述文件
Provisioning Profiles:根据 电脑+App+真机设备(Certificates + Identifiers-App IDs + Devices)这三项生成一个描述文件 xxx.mobileprovision, 注意该文件是通用的。
为什么要生成这个文件呢?因为做真机调试是不需要联网的,而刚才的几项配置都是在网络上配置的,需要将配置信息最终下载到本地电脑上,通过下载的文件进行来校验真机能否调试。
具体操作:
最终使用的文件:.cer文件和.mobileprovision文件,只要这两个文件是一对就可以真机调试
双击.cer文件,将证书安装到钥匙串访问中
双击.mobileprovision文件:目的是将该文件复制到/静态库Library/MobileDevice/Provisioning Profiles文件夹中
配置App对应的证书和描述文件
可以右键证书,导出 个人信息交换.p12文件,这个文件可以给其他同事使用,其同事双击该文件也会在钥匙串访问中出现该证书,在将描述文件给其他同事,这样.p12(相当于.cer),又有.mobileprovision文件,所以其他同事也可以做真机调试了。如果把.cer看成原件的话,.p12文件则为.cer的复印件。要想真机调试需要两个文件.cer|.p12 + .mobileprovision文件
Xcode7.0之后
Xcode–>Preferences—>Accounts—> Add Apple ID 然后选择真机直接允许App,弹出来个框点击Fix Issue即可,这样就完成真机测试了
Xcode7.0真机测试Apple ID必须加入苹果开发者计划,而Xcode7.0之后直接使用普通的Apple ID即可真机测试。注意Xcode7.0之后并不是不需要.cer和.mobileprovision文件,而是苹果已经生产了这两个文件,并将.cer文件安装到钥匙串访问里,.mobileprovision已经复制到Library/MobileDevice/Provisioning Profiles文件夹中.