iOS模拟器,是在Mac下面开发程序时,开发iOS平台的程序时候,可以使用的辅助工具。iOS Simulator 是Xcode的一部分,Xcode是苹果自家的iOS开发程序,可以免费下载!
iOS Simulator位于/Developer/Platforms/iPhoneSimulator.platform/ Developer/Applications文件夹中。通常不需要直接启动iOS Simulator-它在Xcode运行(或是调试)应用程序时会自动启动。Xcode会自动将应用程序安装到iOS Simulator上。
iOS Simulator并非仿真器
iOS Simulator是个模拟器,但并非仿真器。这两者的区别是什么呢?模拟器会模仿实际设备的行为。iPhoneSimulator会模仿实际的iOS/iPad设备的真实行为。但模拟器本身却使用了Mac上的各种库(如Quicktime)进行渲染以便效果与实际的iPhone保持一致。此外,在模拟器上测试的应用程序会编译为x86代码,这是模拟器所能理解的字节码。实际的iPhone设备使用的则是ARM代码。
iOS所支持(模拟)的设备
我此处的iOS 5.1的模拟器,支持的设备有4个:
即:
iPad
iPad(Retina)
iPhone
iPhone (Retina)
如何打开iOS模拟器
Xcode编译iOS项目后自动打开iOS模拟器(去调试当前程序)
在调试Xcode中的iOS程序时,点击对应的Run:
Xcode会去编译当前iOS项目,编译成功后,会自动并调用iOS模拟器,并运行相应的编译出来的程序:
注:你当前的项目,所使用的对应模拟器需要设置为对应的模拟器。
比如我此处的项目是针对iPhone的,所以设置为iPhone 5.1 Simulator:
手动打开iOS模拟器
如有需要,当然也可以手动自己去打开对应的iOS模拟器。
通过 Xcode->Open Developer Tool->iOS Simulator:
即可打开对应的iOS模拟器。
关于iOS模拟器中的界面
一共有三个界面:
下面这个是第三个界面:应用程序
这个是第二个界面:iPhone主功能界面
第一个界面搜索界面:
三个界面之间的切换
除了可以点击那个小圆点之外,也可以通过鼠标拖动:
iOS模拟器使用心得
1.自定义(GPS,(Google)地图中会利用到的)当前坐标
无意间发现的一个功能,可以自定义当前的坐标:
其默认的坐标是Apple总部的坐标:
纬度:37.785834
经度:-122.406417
此地址,之前在调试添加地图功能时就发现了此“秘密”了。
关于坐标,地图方面的内容,感兴趣的可参考该贴:
给Your Second iOS App:BirdWatching添加地图的支持
对应的,可以看到上面已经提供了一些其他地址,比如:
Apple Stores
Apple
City Bicycle Ride
City Run
Freeware Drive
我暂时就不去折腾了,感兴趣的人,可以自己去尝试。
2. “存储屏幕快照”保存下来的截图到底在哪里
通过 文件->存储屏幕快照:
可以将当前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有个前往,里面可以打开特定的路径:
然后终于找到了对应的隐藏的“Library”文件夹了:
但是后来又是找了半天,才找到屏幕快照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:
另一个是:
/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:
【总结】
至此,算是终于找到项目的截图了,有两个位置:
1./Users/你的用户名/Library/Application Support/iPhone Simulator/模拟器版本号/Applications/Xcode所生 成的某项目的编号/Library/Caches/Snapshots/项目名
2. /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)的输入法,即简体中文 拼音输入法
图解:
设置完毕后,输入键盘中,就可以点击那个小地球,切换不同的输入法了。
就可以切换到中文简体输入法,输入中文了: