關(guān)于Unity生成的工程導(dǎo)入原生工程

工程融合分三部分,unity部分導(dǎo)入目標(biāo)工程,使用的三方庫導(dǎo)入,代碼導(dǎo)入。只導(dǎo)入unity部分的話 看第一部分就夠了。

一,unity 部分導(dǎo)入

AR工程部分此處使用ARProject代稱 ,目標(biāo)工程使用iOSProject代稱

1.Unity導(dǎo)出的工程中的bundleId要和你本地iOS項目的id一致

2.刪除Main.storyboard,代碼設(shè)置控制器(方便切換window)

3.將ARProject中的Classes,Libraries,Data三個文件夾和MapFileParser.sh文件拷貝入iOSProject根目錄(目錄路徑可以自己修改,只要和后面的Search Paths配置一致就行)。如圖效果:

4.將Classes,LIbraries,MapFileParser.sh導(dǎo)入工程使用Create groups,將Data文件夾導(dǎo)入工程使用Create folder references。導(dǎo)入結(jié)果如下:

5.添加runScript"$PROJECT_DIR/MapFileParser.sh"

6.添加搜索路徑,(注意雙引號的中英文):

Header Search Paths添加

"$(SRCROOT)/Classes"

"$(SRCROOT)"

$(SRCROOT)/Classes/Native

$(SRCROOT)/Libraries/bdwgc/include

$(SRCROOT)/Libraries/libil2cpp/include

Library Search Paths添加

$(inherited)

"$(SRCROOT)"

"$(SRCROOT)/Libraries"


7.添加預(yù)處理文件,如果已經(jīng)有了,就合并,刪除其中一個

8.添加-DINIT_SCRIPTING_BACKEND=1 ?注意 =1 中間沒有空格否則會報錯

10.修改Mismatched Return TypeYES

11.修改bitcode選為NO

12.build setting里面添加User-Defined

UNITY_RUNTIME_VERSION ? ? 5.3.0f4

UNITY_SCRIPTING_BACKEND il2cpp

GCC_USE_INDIRECT_FUNCTION_CALLS ? ?NO

GCC_THUMB_SUPPORT ? ? NO

13.unity啟動所需要的鏈接庫如下圖:

二、添加第三方庫

1.將ARProject中的service文件夾拖入iOSProject工程中,如果工程中已經(jīng)有了就不用添加了。

2.添加依賴庫,依賴庫如下圖(依工程中的庫為準(zhǔn)):

三、添加邏輯代碼和圖片資源

1.將imageSource、iOSUnityMutually、MZLARSDK.framework拖入工程里 其中imageSource中的Archive文件夾使用Create folder references添加入工程

2.RegexKitLite、Reachability、TTDFileWriter、TTDFileReader、BDVRSConfig修改-fno-objc-arc

3.other Linker Flags 添加,-ObjC、-licucore

4、在plist文件里 要開啟定位(支持后臺定位或者使用時定位)、相機、相冊、http請求的權(quán)限

四、完成之后編譯看是否報錯。

1、修改的main.m

復(fù)制Classes/main.mm內(nèi)容到main.m,修改main.m的擴展名為.mm,刪除Unity生成main.mm。這里整合的時候,合適就好,啟動的delegate仍舊不變,只是添加其中的初始化函數(shù)。

2、在appdelegate中導(dǎo)入頭文件#import"UnityDelegateManager.h"。然后在delegate的各個代理方法添加對應(yīng)的名稱一樣的unity代理方法,如下圖:

3、調(diào)用ar的方法是[UnityDelegateManager startARWindow]; 關(guān)閉方法是[UnityDelegateManager stopARWindow];

4、如果編譯不報錯,但是不能運行,就把service文件夾下的第三方庫刪掉重新添加一遍。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容