2012-09-24 52 views
0

我在我的應用程序(基本上是修改的移動世界會議)應用程序中遇到問題,當我在windows上運行IOS Emulator時,直接在IPad上運行它。我知道有一個不同的過程或涉及到,所以我不認爲它是完全一樣的。MonoTouch在iOS模擬器上的運行方式不同於IPad

在具體的,我讓周圍初始化SQL數據庫(SqlLite)錯誤與錯誤是

「對象沒有定義」

當我嘗試和單步調試到設備,我得到的錯誤感覺就像堆棧已被破壞,我甚至無法調試到方法。

我的問題是,我可以尋找什麼類型的差異以及如何調試它們?必須有某種導致問題的模式,我不知道那是什麼或如何弄清楚。我用我的C#代碼只是在x86上工作。

+1

請提供一些代碼來幫助解決您的問題(尤其是「初始化sql數據庫」的代碼)。 –

+0

你如何在Windows中運行iOS模擬器? – jonathanpeppers

+1

我在monodevelop啓動的windows中運行IOS模擬器。關於代碼,它不僅僅是創建表,而且還有其他的東西以一種奇怪的方式崩潰(比如LINQ語句只是獲取集合中的第一條記錄)。具體來說,我要求的東西可能會導致模擬器運行不同。我並不是要求這個特定問題的幫助(因爲沒有添加大量代碼,我沒有一個好的具體情況) –

回答

0

什麼原因導致模擬器行爲不同?模擬器並不像真實設備那樣受限於內存使用,所以你很可能會在設備上發出內存警告(如果你沒有正確處理它們,就會發生崩潰)。但是,代碼本身運行速度更快,因此線程之間的競爭條件更可能發生變化,因此請注意這一點。不要與來自不同線程的數據庫交談,或至少使用適當的鎖定。當然有AOT limitations只發生在設備上。對我來說,你的LINQ問題聽起來像是一個AOT問題。

相關問題