一. 真机测试的简介
-
什么是真机测试
- 真机测试, 简单理解就是将App运行到iPhone上, 测试App
-
模拟器与真机环境的差异
- 内存环境和网络环境:
- 在模拟器中, 模拟器往往会最大化利用Mac的内存, 因此导致对内存消耗的判断有误, 并且无法模拟移动网络
- 在真机中, 是以手机的真实环境进行的测试, 并且可以使用移动网络, 因此可以最直接的反馈给我们App的运行情况
- 传感器
- 在模拟器中, 无法使用需要传感器功能的App, 只有真机才能具有磁力计/陀螺仪/距离传感器等
- 特定的功能
- 如拍照, 打电话, 发短信, 蓝牙等等
- 综上所述, 在App发布之前, 或者在关键阶段进行调试, 一定要使用真机测试
- 内存环境和网络环境:
-
怎样做真机测试:
- 在Xcode7.0之前, 真机测试需要很多麻烦的步骤, 要在Apple官网上申请证书, 限制指定的账号, 电脑, 真机设备
- 需要申请开发者账号(至少要买个688元的个人账号)
- 需要为电脑申请cer证书
- 提交真机测试App的Bundle ID
- 提交真机测试的真机UDID
- 根据前三项, 还要生成一个描述文件, 总之是麻烦至极
- 在Xcode7.0之后, 只要拥有Apple ID以及一部iPhone就可以进行真机测试, Xcode会自动生成对应的证书, 不在需要之前各种繁琐的限定
- 目前程序员应用的普遍为Xcode7.0+, 因此不对Xcode7.0之前的真机测试做描述
- 在Xcode7.0之前, 真机测试需要很多麻烦的步骤, 要在Apple官网上申请证书, 限制指定的账号, 电脑, 真机设备
二. Xcode7.0之后的真机调试
-
二话不说, 先去AppStore下载一个Xcode7.0+再说
-
真机调试的步骤:
- 进入Xcode的偏好设置(Preferences)
- 在账户(Accounts)中, 添加自己的AppleID
- 在选择App的运行环境的时候, 如果计算机检测到有iOS设备连接到电脑时, 就会显示你的真机设备
- 注意项目的部署版本, 最低为你真机目前的iOS版本
- 此时点击运行的时候, 会有
Failed to code sign "项目名称"
的一个警告, 这时由于还没有生成证书和描述文件导致的, 此时只需要点击Fix Issue
, Xcode就会自动解决这个问题 - 但是要注意: 这个过程是需要你的电脑有网络, 并且要耐心等待一阵, 因为Xcode会向Apple发送请求, 请求你的真机可以调试这个App
-
真机调试过程中可能出现的问题
-
The account XXX has no team with ID XXX
- 此问题是一个比较坑爹的问题, 因为无论是真机还是Xcode的配置, 其实都是正确的, 但是就是无法使用
- 进入苹果开发者中心, 并且进入联系官方的链接
- 在该链接中选择Apple Developer Program Support
- 在反馈表单中, 像苹果公司描述一下遇到的问题, 之后就等待苹果公司的回复吧
- 通常这种问题会在1天之内得到解决
-
An App ID with identifier XXX is not availabele. Plase enter a different string.
- 此问题比较简单, 由于App的唯一标识符是全球唯一性的, 这意味着你的Bundle identifier与其他App冲突了, 更换即可
-
Could not launch XXX. Process launch failed: Security.
- 此问题是由于真机设备中没有信任当前开发者导致的
- 进入到手机的设置界面, 在设备管理中找到对应的Apple ID的开发商应用, 点击信任即可
- 苹果限制, 免费账号进行真机调试, 同一个AppleID在7天之内只能调试10个不同Bundle ID的App
- 换一个Apple ID继续测试
- 或者保证你的项目的BundleID为之前生成过的ID就可以了~
-
网友评论