對於客戶端,我開發了一個iOS + Android
應用程序,使用Cordova (PhoneGap)
作爲用戶界面。現在,作爲此應用的更新,我正在嘗試添加一個寫在Haxe中的遊戲。最初這個遊戲是爲Flash target
編寫的,但我已經更新它與C++
目標Android and iOS
一起工作。從iOS應用程序運行Haxe -hxRunLibrary()錯誤
在Android上,很容易使用活動(Haxe部分作爲單獨的活動運行)將其與Cordova
應用程序集成,但在iOS上實現類似結果時遇到了一些問題。
到目前爲止,我已經嘗試在自己的項目全部hxcpp
生成的代碼(在相同的方式,NME樹立XCode項目,當你「NME打造IOS」),而我從我的代碼時調用hxRunLibrary()
我想讓遊戲運行。
的問題是,hxRunLibrary()
似乎想打造自己的UIApplication
實例,它失敗,出現以下錯誤,因爲我主要的應用程序已經在運行一個實例:
*** Assertion failure in void UIApplicationInstantiateSingleton(Class)(), /SourceCache/UIKit_Sim/UIKit-2380.17/UIApplication.m:2037
*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'There can only be one UIApplication instance.'
我認爲它可能有一些使用Haxe用於圖形的SDL。根據我的理解,SDL需要從應用程序的主要功能運行,該應用程序與Cocoa產生了衝突,該功能也需要從主函數運行。
有沒有簡單的解決方法呢?我查看了hxcpp資源,但無法找到UIApplication
相關代碼或SDL的任何入口代碼。
也許有人可以指出我正確的方向。謝謝!