2015-10-09 26 views
1

我使用Unity 5.2和Xcode 7,並且當我選擇IL2CPP作爲腳本後端時,Universal for architecture和在Xcode上運行:我在運行時多次出現此錯誤:Unity 5.2 ios IL2CPP構建給出空引用異常

(Filename: currently not available on il2cpp Line: -1) 
NullReferenceException: A null value was found where an object instance was required. 
at BaseMenuControl.baseUpdate() [0x00000] in <filename unknown>:0 
at MainMenu.Update() [0x00000] in <filename unknown>:0 

其中MainMenu繼承了BaseMenuControl,而BaseMenuControl繼承了MonoBehaviour,除此之外,沒有什麼特別的。

有沒有人幫助/指導我?

回答

2

有些原因可能導致播放器中的某些內容爲null,而不是在編輯器中。我首先建議使用Mono腳本後端進行嘗試。

如果在這種情況下有效,那麼IL2CPP腳本後端可能會剝離您需要的東西。您可以按照這裏的指示手動保存的東西:

http://docs.unity3d.com/Manual/iphone-playerSizeOptimization.html

如果同樣的問題與單腳本後臺發生,那麼它可能調試設備上運行腳本代碼,看看發生了什麼存在價值。這是可能的MonoDevelop的如下描述:

http://docs.unity3d.com/Manual/MonoDevelop.html

+0

據我所知單腳本後臺不支持arm64和ARMv7,我錯了? –

+0

雖然它不支持我的知識,但它提供了幾個我未能處理的「架構arm64」未定義符號(當我嘗試搜索這些錯誤時,我建議使用IL2CPP腳本後端)。我需要armv7和arm64支持,以便Apple將我的項目接受到AppStore。 –

+0

Mono腳本後端僅支持armv7(32位)而不支持arm64。您需要使用支持armv7和arm64的IL2CPP腳本後端。 –