nod*_*nja 4 cocoa-touch objective-c ipod-touch ios4 ios-simulator
在模拟器中运行程序的速度与真正的iPhone或Ipod触摸相比如何?是更快还是更慢?
Eon*_*nil 10
iPhone模拟器是模拟器.它不模仿真实的硬件,只是模仿它的行为.事实上,为模拟器编译的应用程序只是直接在Mac OS X机器上执行的x86二进制文件.因此它充分利用了开发机器的所有处理能力和网络带宽.
您可以假设您正在运行常规的Mac OS X应用程序.事实上,它是.这就是为什么我们无法在iOS模拟器中运行iOS应用程序的答案.您需要为x86编译二进制文件.但是,使用此方法,您无法获得与真实设备完全相同的行为.
基本的UIKit图形速度非常快,因为它是在OS X的Quartz上模拟的,它是硬件加速的,但OpenGL ES上下文是个例外.这真的很慢.即使它是模拟器,模拟器也会使用软件渲染器模拟 OpenGL ES以显示正确的结果.它不使用硬件加速.
Android模拟器是一个模拟器.它本质上是一个虚拟机模拟所有目标机器行为,所以它比iPhone模拟器慢得多.但它可以与真实设备完全相同.您甚至可以直接在Android模拟器上从Android市场运行Android应用.
然而,有一些陷阱.有很多Android硬件,但模拟器只模拟它们的一部分.谷歌的实施.如果您的设备有自己的特殊模块,当然,它无法模拟.可以使用来自每个硬件供应商的某种仿真器插件,但据我所知,几乎没有供应商提供它.
因此,iPhone模拟器总是比真实设备快得多.Android模拟器从未像真正的设备那样快,即使它比初始版本快得多.
| 归档时间: |
|
| 查看次数: |
2580 次 |
| 最近记录: |