簡體   English   中英

為IOS創建AOT清單(ExecutionEngineException)

[英]Create AOT checklist for IOS (ExecutionEngineException)

首先,我在answers.unity.com上發布了一個類似的問題,並且在意識到它影響了一個更廣泛的社區......所以請不要把它作為交叉點。

最近向IOS部署C#代碼對我來說是一場噩夢。 當我嘗試將我的游戲部署到IPAD時,所有都以ExecutionEngineException開始,我使用了一個成熟的單元測試組件。

在過去的幾天里,我做了功課,發現了幾十個與ExecutionEngineException相關的問題。 據我所知,這里沒有神奇的解決方案,只能解決具體的代碼問題。

現在問題是:假設您有一個經過單元測試的代碼。 (例如游戲AI或任何與IOS平台無直接關系的東西)在IOS上運行時,這將轉向雷區。 你無法知道,也不能單元測試代碼的哪一部分會破壞。

這破壞了我關於軟件質量和測試的所有(我們的)想法......

我們必須在這里找到解決方案。 理想情況下,我們應該在桌面上針對其單元測試運行AOT-ed代碼。 我認為目前不可能,如果我錯了請糾正我並分享步驟說明如何做(最好是在Windows?)

作為備份計划,我們必須創建一個詳細的列表,如果針對AOT-ed平台,如IOS,將使用哪種代碼構造

我的經驗到目前為止:

1)將FirstOrDefault與值類型一起使用2)使用Sum(customType =(gt)customType.Property)

任何人都知道如何處理這個問題?

問候

假設您有一個經過單元測試的代碼。

如果你已經有單元測試,那么你很幸運。 您只需使用Touch.Unit在iOS設備上調整這些單元測試。

作為備份計划,我們必須創建一個詳細的列表,如果針對AOT-ed平台,如IOS,將使用哪種代碼構造

你最接近的是MonoTouch的限制頁面。 上下文而不是API通常是最重要的細節。

例如,使用value-type的泛型會產生問題(因為很難檢測到需要生成的內容)。 人們在使用LINQ時經常會遇到這種情況,但它不是LINQ問題 - 而是LINQ查詢中使用的類型。

1)將FirstOrDefault與值類型一起使用

AFAIK已在MonoTouch中修復了一段時間(至少有幾種變體)。 OTOH Unity引擎可能還沒有這些修復程序。

2)使用Sum(customType =(gt)customType.Property)

這是一種不知道類型的情況,因此無法確定它是否有效。 如果/當您遇到這種情況時,請將它們報告給bugzilla,因為我們可以將它們包含在我們的測試套件中(對於將來的版本),並且通常能夠為大多數情況提供快速解決方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM