【整理】Xcode中的iOS模拟器(iOS Simulator)的介绍和使用心得  


iOS模拟器简介

iOS功能简介

iOS模拟器,是在Mac下面开发程序时,开发iOS平台的程序时候,可以使用的辅助工具。

其功能是,帮你模拟iOS平台设备,在模拟器上运行对应的程序,以方便你没有实体设备的时候去调试程序。

 

iOS所支持(模拟)的设备

我此处的iOS 5.1的模拟器,支持的设备有4个:

xcode 模拟ios手机 xcode模拟ios玩游戏_xcode 模拟ios手机

即:

iPad

iPad(Retina)

iPhone

iPhone (Retina)

 

如何打开iOS模拟器

Xcode编译iOS项目后自动打开iOS模拟器(去调试当前程序)

在调试Xcode中的iOS程序时,点击对应的Run:

xcode 模拟ios手机 xcode模拟ios玩游戏_xcode 模拟ios手机_02

Xcode会去编译当前iOS项目,编译成功后,会自动并调用iOS模拟器,并运行相应的编译出来的程序:

xcode 模拟ios手机 xcode模拟ios玩游戏_用户名_03

 

注:你当前的项目,所使用的对应模拟器需要设置为对应的模拟器。

比如我此处的项目是针对iPhone的,所以设置为iPhone 5.1 Simulator:

xcode 模拟ios手机 xcode模拟ios玩游戏_输入法_04

 

手动打开iOS模拟器

如有需要,当然也可以手动自己去打开对应的iOS模拟器。

通过 Xcode->Open Developer Tool->iOS Simulator:

xcode 模拟ios手机 xcode模拟ios玩游戏_iOS_05

即可打开对应的iOS模拟器。

 

关于iOS模拟器中的界面

一共有三个界面:

下面这个是第三个界面:应用程序

xcode 模拟ios手机 xcode模拟ios玩游戏_输入法_06

 

这个是第二个界面:iPhone主功能界面

 

xcode 模拟ios手机 xcode模拟ios玩游戏_xcode 模拟ios手机_07

第一个界面搜索界面:

 

xcode 模拟ios手机 xcode模拟ios玩游戏_用户名_08

 

三个界面之间的切换

除了可以点击那个小圆点之外,也可以通过鼠标拖动:

 

xcode 模拟ios手机 xcode模拟ios玩游戏_用户名_09

 

 

iOS模拟器使用心得

1.自定义(GPS,(Google)地图中会利用到的)当前坐标

无意间发现的一个功能,可以自定义当前的坐标:

xcode 模拟ios手机 xcode模拟ios玩游戏_iOS_10

其默认的坐标是Apple总部的坐标:

纬度:    37.785834

经度:-122.406417

xcode 模拟ios手机 xcode模拟ios玩游戏_用户名_11

此地址,之前在调试添加地图功能时就发现了此“秘密”了。

关于坐标,地图方面的内容,感兴趣的可参考该贴:

给Your Second iOS App:BirdWatching添加地图的支持

对应的,可以看到上面已经提供了一些其他地址,比如:

Apple Stores

Apple

City Bicycle Ride

City Run

Freeware Drive

我暂时就不去折腾了,感兴趣的人,可以自己去尝试。

 

2. “存储屏幕快照”保存下来的截图到底在哪里

通过 文件->存储屏幕快照:

xcode 模拟ios手机 xcode模拟ios玩游戏_用户名_12

可以将当前iOS模拟器的截图存储下来。

但是到底保存下来的图片放到哪里了。

对此,但是通过Finder(等价于Windows中的资源管理器),却找不到其所说的

/Library/Application Support/iPhone Simulator/

后来逼得自己去好好折腾一下。

后来,还是通过命令行找到了对应的iPhone Simulator:

crifan$ pwd 
          /Users/crifan/Library/Application Support/iPhone Simulator/5.1 
          limatoimac:5.1 crifan$ cd/Users/crifan/ 
          limatoimac:~ crifan$ ls-la 
          total 72 
          drwxr-xr-x+ 17 crifan  staff    578  8 14 13:50 . 
          drwxr-xr-x   5 root    admin    170  8  8 21:16 .. 
          -rw-------@  1 crifan  staff      5  8  8 21:16 .CFUserTextEncoding 
          -rw-r--r--@  1 crifan  staff  24580  9 10 16:52 .DS_Store 
          drwx------  13 crifan  staff    442  9  5 15:49 .Trash 
          -rw-------   1 crifan  staff   1033  8 14 13:50 .bash_history 
          -rw-------   1 crifan  staff   1098  8 14 13:50 .viminfo 
          drwxr-xr-x   7 crifan  staff    238  9 10 09:49 CocoaNotepad 
          drwx------+  6 crifan  staff    204  9 10 16:50 Desktop 
          drwx------+  6 crifan  staff    204  8 15 10:52 Documents 
          drwx------+ 12 crifan  staff    408  8 29 17:12 Downloads 
          drwx------@ 41 crifan  staff   1394  8 13 11:08 Library 
          drwx------+  3 crifan  staff    102  8  8 21:16 Movies 
          drwx------+  7 crifan  staff    238  8 14 14:56 Music 
          drwx------+ 10 crifan  staff    340  9 10 15:19 Pictures 
          drwxr-xr-x+  5 crifan  staff    170  8  8 21:16 Public 
          drwxr-xr-x   5 crifan  staff    170  9  7 15:36 develop


可见,当前用户crifan下面,是有对应的Library其下是有

Application Support/iPhone Simulator/5.1

但是,结果却由于/Users/crifan/Library/是隐藏文件夹,导致在Finder中,crifan文件夹下,始终都找不到这个Library文件夹。

后来想到了,Finder有个前往,里面可以打开特定的路径:

xcode 模拟ios手机 xcode模拟ios玩游戏_用户名_13

然后终于找到了对应的隐藏的“Library”文件夹了:

xcode 模拟ios手机 xcode模拟ios玩游戏_xcode 模拟ios手机_14

但是后来又是找了半天,才找到屏幕快照snapshot所在位置:

一个是,对于每个程序所在的路径中的截图:

比如:

/Users/你的用户名/Library/Application Support/iPhone Simulator/模拟器版本号/Applications/Xcode所生成的某项目的编号/Library/Caches/Snapshots/项目名

比如:

/Users/crifan/Library/Application Support/iPhone Simulator/5.1/Applications/58D98889-3767-4B2B-B883-88C04345A8A3/Library/Caches/Snapshots/crifan.com.BirdWatching

下面有对应的截图文件UIApplicationAutomaticSnapshotDefault-Portrait.jpg:

xcode 模拟ios手机 xcode模拟ios玩游戏_xcode 模拟ios手机_15

 

另一个是:

/Users/你的用户名/Library/Application Support/iPhone Simulator/模拟器版本号/Library/Caches/Snapshots/iOS项目名

对应的此处集中了多个项目的不同截图文件。

对于单个项目,会有当前最新的截图文件:

比如:

/Users/crifan/Library/Application Support/iPhone Simulator/5.1/Library/Caches/Snapshots/com.apple.mobileslideshow

有对应截图文件UIApplicationAutomaticSnapshotDefault-Portrait.jpg:

xcode 模拟ios手机 xcode模拟ios玩游戏_xcode 模拟ios手机_16

 

【总结】

至此,算是终于找到项目的截图了,有两个位置:

/Users/你的用户名/Library/Application Support/iPhone Simulator/模拟器版本号/Applications/Xcode所生成的某项目的编号/Library/Caches/Snapshots/项目名

/Users/你的用户名/Library/Application Support/iPhone Simulator/模拟器版本号/Library/Caches/Snapshots/iOS项目名

另外,貌似屏幕截图只保存最新的单张的截图,多次截图则会导致之前的截图被覆盖掉。。。

所以需要拷贝截图出来的话,要截图完毕后,即可拷贝出来,否则下次再截图就把之前的截图覆盖了。

 

3.添加简体中文拼音输入法

在iOS的第二个界面:iPhone主界面中:

Settings ->General ->Keyboard->International Keyboards -> Add New Keyboard ->Chinese Simplified – PinYin

即可添加出 Chinese – Simplified (PinYin)的输入法,即简体中文 拼音输入法

图解:

xcode 模拟ios手机 xcode模拟ios玩游戏_iOS_17

 

设置完毕后,输入键盘中,就可以点击那个小地球,切换不同的输入法了。

就可以切换到中文简体输入法,输入中文了:

xcode 模拟ios手机 xcode模拟ios玩游戏_用户名_18