0

当我在 Windows上运行我的应用程序(基本上是修改后的世界移动大会)应用程序时,我遇到了问题,而IOS Emulator不是直接在其IPad本身上运行它。我知道有一个不同的过程或涉及,所以我不希望它完全相同。

具体来说,我在初始化 sql 数据库(SqlLite)时遇到错误,错误是

“未定义对象”

当我尝试对设备进行单步调试时,我得到的错误感觉好像堆栈已损坏,我什至无法调试方法。

我的问题是,我可以寻找哪些差异类型以及如何调试它们?一定有某种模式会导致问题,我只是不知道那是什么或如何解决。我已经习惯了只在 x86 上工作的 c# 代码。

4

1 回答 1

0

是什么导致模拟器表现不同?模拟器不像真实设备那样在内存使用方面受到限制,因此您可能会在设备上遇到内存警告(如果您没有正确处理它们,则会崩溃)。然而,代码本身运行得更快,因此线程之间的竞争条件更有可能发生,因此请注意这一点。不要从不同的线程与数据库交谈,或者至少使用适当的锁定。当然,还有仅在设备上发生的AOT 限制。您的 LINQ 问题对我来说听起来像是 AOT 问题。

于 2012-12-24T20:23:05.023 回答