iPhone模拟器是测试应用程序时一个非常重要的工具,假如没有iPhone、iPodTouch和iPad这些设备的话,那么它就是测试应用程序的唯一工具了。它的位置是在/Developer/Platforms/iPhoneSimulator.platform/Developer/Applications文件夹中。虽然它非常重要,但是却不用像Xcode那样将iPhone模拟器程序图标拖曳到桌面上,因为我们在Xcode中调试和运行项目时,会自动将程序安装到iPhone模拟器中,并且在模拟器中运行。
通过模拟器硬件菜单,我们可以选择要模拟的各种硬件设备,其中包括iPad、iPhone和iPhone(Retina),最后一个设备就是采用视网膜技术,分辨率为960×480像素的iPhone4和iPodTouch4设备。还有就是iOS版本,目前的模拟器提供了从3.2到4.2四个不同版本的iOS环境。
在模拟器上的输入可以通过Mac的键盘和鼠标,以及程序运行时弹出的虚拟键盘实现,如图1-10所示。
(点击查看大图)图1-10iPhone模拟器及菜单设置 |
选择模拟器中的硬件菜单,我们可以让它做如下这些事情。
向左旋转:设备屏幕向左旋转90 ,快捷方式command+←。
向右旋转:设备屏幕向右旋转90 ,快捷方式command+→。
摇动手势:模拟设备的晃动。
首页:返回到Home页面。
锁定:设备进入到锁定状态。
模拟内存警告:向模拟器发送一个假的内存警告,但我们不会发现模拟器出现了变化。
切换呼叫状态栏:检测应用程序在接到电话时的情况。
在真实的iOS设备上,我们可以使用多点触摸功能来完成各种交互,像单击、长按、轻划等。在模拟器中使用鼠标和键盘来完成相应的操作方法,如表1-2所示。
表1-2 在模拟器上面通过鼠标模拟手指交互的操作
手势 | 操作 | 手势 | 操作 |
单击 | 在屏幕上单击鼠标 | 滑动 | 1.在起始的位置单击并按住鼠标 2.移动鼠标,然后释放鼠标左键 |
长按 | 在屏幕上长按鼠标 | 拖曳 | 1.在起始的位置按住屏幕中的对象 2.移动对象到目标区域 |
双击 | 在屏幕上双击鼠标 | 夹 | 1.移动鼠标到合适的位置上 2.按住Option键,屏幕 出现两个圆点,代表两个手指 3.按住并移动鼠标, 达到放大、缩小和旋转的目的 |
轻划 | 1.在起始的位置单击并按住鼠标 2.快速的移动鼠标, 然后释放鼠标左键 |
虽然模拟器非常有用,但在使用它测试应用程序的时候还会有一些限制。
模拟器上使用的是Mac OS X版本系统框架,而不是真正的运行在设备上的框架。
模拟器使用的是Mac的硬件和内存,与真正的iPhone上面运行的效果可能会存在性能上的差异,这一点需要注意。
Xcode可以自动地安装应用程序到模拟器中,但是不能在模拟器中通过App Store来安装真正的应用程序到模拟器中。
不可以在模拟器中发送和接收短信。
模拟器最多只能模拟两个手指的触摸操作,如果在应用程序中的用户界面需要响应更多的手指触摸事件,就必须使用真正的iOS设备进行测试。
模拟器不能模拟iPhone和iPod Touch的加速感应器、三维陀螺仪、摄像头以及麦克风等硬件设备。
OpenGL ES在真正设备上的渲染效果和模拟器中的渲染效果会有些许的不同,需要注意。