《iOS编程指南》——2.4节安装iOS SDK

简介:

本节书摘来自异步社区《iOS编程指南》一书中的第2章,第2.4节安装iOS SDK,作者 【美】Alasdair Allan,更多章节内容可以访问云栖社区“异步社区”公众号查看

2.4 安装iOS SDK
iOS编程指南
在本书编写的时候,Xcode开发工具和iOS SDK的最新发行版本可以从Mac App Store上一并下载。打开Mac App Store搜索Xcode,进入下载页面,如图2-1所示,点击蓝色的“免费”按钮,然后点击“安装应用”按钮。

Xcode开发工具和iOS SDK是合并在一起的,总共大约1.5GB。你可以在“已购买”标签下查看下载进度。当下载完成,你将会在你机器的/Applications文件夹下发现一个名为Xcode的新应用。

第一次启动Xcode的时候,(可能会)有一个对话框弹出来要求你安装一些附加组件,这些组件会因为你下载的Xcode版本的不同而不同。对于我来说,Xcode要求我安装用于支持旧版iOS模拟器的一些组件,如图2-2所示。


8c7edc88160586d136c67db951452b44a49bc57f

不过别着急,我们的安装过程还没有全部完成。在Xcode的菜单中选择Preferences菜单项,打开Downloads,在Components标签下你会看到一些组件,比如Command Line Tools和Legacy Simulators等,这些组件在默认情况下并没有安装。这些组件虽然不是现在必需的,不过还是建议安装,之后会很有用,逐一点击就可以下载了,如图2-4所示。再进到Documentation标签下来看一看,里面有很多文档,建议也


0f63db2fe505a64ce8cb52b8557c0cede15e003c

下载。现在你已经有了编写代码和在模拟器中测试你的应用所需的所有东西了。

图像说明文字如果你想在真机上调试,则需要加入iOS开发者计划标准版或者企业版。然而注册iOS开发者计划需要的时间可能各不相同。所以如果你现在还没注册完成,请将本页做个书签,等注册完成再回头来把剩下的步骤做完。在等待的过程中,你可以使用iPhone或者iPad模拟器来实践本书中的示例程序。

iOS模拟器很好,但是并不完美。代码在模拟器上的运行速度比真机快很多,所以如果你的应用使用了结构复杂的UI或者消耗了大量的计算资源,那么真机和模拟器之间的差别就很重要了。很多时候我发现在模拟器中运行的好好的,但在真实的设备上却很慢,于是只能回头重构代码并优化UI的实现方式。你也有可能在模拟器上使用了比真实设备所能提供的内存要多的内存资源。

另外,一些框架(Framework)在模拟器中是可用的,但在真实设备上却没有,尤其是NSPredicate和NSXMLDocument这两个类。如果你的代码用了这些类,在模拟器上是可以编译和运行的,但在真实设备上却不行。一般情况下,你可以在模拟器中构建(Build)并运行,不过最好是时不时也连上真实的设备上试一试,如果你一旦不小心使用了这样的类,Xcode会在编译时提示链接错误。你也不想到了项目结尾的时候才发现某个库在真实设备上不能用,还得着急忙地寻找替代方案吧。

NSPredicate和NSXMLDocument是常用的两个类,其中NSXML Document是用来处理XQuery和XML文档的,不过一般是用在Mac开发上,而非iOS开发上。很多开发者很快就会发现这个问题。

我听到过一些抱怨,声称在模拟器上会出现轻微的UIKit控件不对齐的情况,不过我自己倒没有遇到过。可是如果用更加底层的图像库,比如OpenGL ES,真实设备上使用的渲染器和模拟器上使用的渲染器有一点区别,因此在模拟器上看到的图形和真实设备上显示的图形会有像素级别的细微差距。

另外模拟器会有一些先天的缺陷,如果你的应用的UI需要响应超过两个手指的触摸事件,在模拟器上就没法测试了。

尽管模拟器不支持多点触控,不过两点触控还是有办法测试的。你可以按住键盘上的Option键并拖动鼠标来模拟放大或缩小的动作,或者可以按住Option和Shift键并拖动鼠标来模拟两指拖动。

另外,如果你在模拟器中运行你的应用,你将无法使用加速度传感器、GPS、蓝牙和数字指南针。如果你的应用依赖这些硬件模块,那么你没有其他选择,只能用真实设备来调试。

关于Beta版本
到目前为止,苹果公司使用过多种方式发布开发版(Beta版)的开发工具。它们通常会以.dmg文件的形式放在iOS Dev Center里供开发者下载,不过有一些Beta版的工具在Mac App Store就可以下载到,当然需要开发者提供兑换码(Redemption Code)才行,兑换码是和你注册苹果开发者使用的Apple ID绑定的,可以用于换取获得Beta版软件的权限。不过,虽然最近发布的工具的Beta版都是一个独立的安装包,但是之前有一些版本是在安装时你必须先下载升级了的Xcode,然后再下载一个独立的安装包来升级iOS SDK。

相关文章
|
4天前
|
Android开发 iOS开发 开发者
ios应用打包、安装和上架攻略
假如是普通的证书或普通company证书只能上架才能安装(测试的话有其他安装方法,那是另外的话题),假如是企业类型的in house证书,则可以通过在线安装的方式,比如通过上传到一些分发平台,比如香蕉云编或蒲公英生成安装码扫码安装。
19 2
|
15天前
|
开发工具 iOS开发 容器
【Azure Blob】关闭Blob 匿名访问,iOS Objective-C SDK连接Storage Account报错
iOS Objective-C 应用连接Azure Storage时,若不关闭账号的匿名访问,程序能正常运行。但关闭匿名访问后,上传到容器时会出现错误:“Public access is not permitted”。解决方法是将创建容器时的公共访问类型从`AZSContainerPublicAccessTypeContainer`改为`AZSContainerPublicAccessTypeOff`,以确保通过授权请求访问。
【Azure Blob】关闭Blob 匿名访问,iOS Objective-C SDK连接Storage Account报错
|
2月前
|
安全 开发者 iOS开发
iOS16系统手机设置开启开发者模式才能安装ipa包
iOS16系统手机设置开启开发者模式才能安装ipa包
67 1
|
1月前
|
开发工具 Android开发 Windows
Android Studio安装Unable to access Android SDK add-on list处理方法
Android Studio安装Unable to access Android SDK add-on list处理方法
34 0
|
2月前
|
前端开发 JavaScript 程序员
HBuilderX使用mac打包ios应用提示苹果根证书没有安装
HBuilderX使用mac打包ios应用提示苹果根证书没有安装
42 0
|
2月前
|
开发工具 iOS开发 Perl
iOS使用SDK静态库
iOS使用SDK静态库
28 0
|
2月前
|
Java 开发工具 Android开发
SLS:使用 OTel 官方 SDK 采集 Android、iOS Trace 数据实践
本文介绍了使用 OTel 官方 SDK 采集 Android、iOS Trace 数据实践。
181 0
SLS:使用 OTel 官方 SDK 采集 Android、iOS Trace 数据实践
|
2月前
|
JavaScript Java Maven
云效产品使用常见问题之android sdk 构建出aar后,上传到私有maven仓库失败如何解决
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
9月前
|
API 开发工具 Android开发
解决 Android App 上架 Google play后 ,签名变更,第三方sdk无法登录
解决 Android App 上架 Google play后 ,签名变更,第三方sdk无法登录
199 0
|
2月前
|
安全 开发工具 Android开发
几个Flutter常见诊断错误与解决Android toolchain - develop for Android devices X Unable to locate Android SDK
几个Flutter常见诊断错误与解决Android toolchain - develop for Android devices X Unable to locate Android SDK
954 0