【问题标题】:What differences are there between running monotouch in simulator vs. on device?在模拟器和设备上运行 monotouch 有什么区别?
【发布时间】:2011-06-11 08:43:28
【问题描述】:

是否有任何文档说明在 (iPad) 模拟器中使用的单点触控运行时与在实际设备上运行之间的区别?

我最近不得不更改一些在设备上运行时导致 ExecutionEngineException(似乎与提到的here 无关)的代码,但在模拟器中却没有。

模拟器中是否启用了 JIT(我知道它不在设备上)或者为什么会有这种差异?

(问题也发布到 Monotouch 论坛here

【问题讨论】:

    标签: ios-simulator xamarin.ios jit aot


    【解决方案1】:

    iOS 模拟器是模拟器而不是模拟器。这意味着在模拟器上运行时,您可以访问完整的 x86 JIT,而在设备上您只能执行 ARM full-aot。还有许多其他细微差别(某些框架/功能在模拟器上不可用)。

    【讨论】:

    • 感谢您的回答,杰夫。将等待,看看是否有人可以指出我的任何官方文档,否则我会接受你的回答。
    • 但我认为模拟器是 Xcode 附带的,因此会运行“Apple 二进制文件”?那么它怎么会知道 JIT 或 AOT 呢?
    • Markus,Apple 的文档在这里:developer.apple.com/library/ios/#documentation/Xcode/Conceptual/… 它没有特别指出 x86 与 ARM 的变化,但它们肯定也存在。
    • Krumelur,模拟器和设备的二进制文件完全不同。
    • Markus,Geoff Norton 是 MonoTouch developmentmet 背后的人之一,所以我猜他的回答不仅仅是官方的 :)
    【解决方案2】:

    关于 Simulator/iDevice 要记住的一点是所使用的配置。仔细检查链接行为。如果您使用反射并且链接器删除了您认为存在的属性的 Get 或 Set 方法,您可能会遇到细微的错误。

    这打击了我几次。

    【讨论】:

      猜你喜欢
      • 2012-11-27
      • 2011-10-09
      • 1970-01-01
      • 2012-02-08
      • 2011-10-09
      • 1970-01-01
      • 2012-10-26
      • 2011-12-12
      • 2010-12-07
      相关资源
      最近更新 更多