Step 1. 從Unity導(dǎo)出Xcode項目.
File->Build Settings->Player Settings
然后右側(cè)Inspector面板,去除Auto Graphics Api選項,只保留一個OpenGLES2
選項. Scripting Backend 選擇 IL2CPP
.
Build->導(dǎo)出Xcode工程.(Unity是從Unity導(dǎo)出的項目,UnityToiOS是新建的Xcode項目)
Step 2.開始合并!
- 將
Classes,Libraries,MapFileParser.sh
拖入到項目中,勾選Copy items if needed
,Creat groups
.(文件比較多,耐心等待一小會.)
2.將Data
拖入到項目,勾選Copy items if needed
,勾選Create folder references
.
3.下面是Xcode的一些配置. 刪除Main.StoryBoard
,以及Info.plist
的Main storyboard file base name
鍵值對.
添加Framework
(添加哪些framework,請參照你從Unity導(dǎo)出來的項目,這里我用的是太虛的sdk,所以下面2個.a文件是太虛的,還有上面的opencv2.framework,以自己項目為準!)
5.關(guān)閉BitCode
4.Header Search Paths
設(shè)置
5.Library Search Paths
設(shè)置
6.other C Flags
設(shè)置 -DINIT_SCRIPTING_BACKEND=1
7.添加 User-Defined
GCC_THUNB_SUPPORT
-> NO
GCC_USE_INDIRECT_FUNCTION_CALLS
-> NO
UNITY_RUNTIME_VERSION
-> 你導(dǎo)出項目的Unity版本
UNITY_SCRIPTING_BACKEND
- il2cpp
8.新建一個
pch
文件,并設(shè)置文件路徑將
Classes
目錄下的 Prefix.pch
的內(nèi)容全部復(fù)制到我們自己創(chuàng)建的pch文件.
9.設(shè)置 main.m
(Supporting Files->main.m)
將 Classes
目錄下的 main.mm
的內(nèi)容全部復(fù)制到Supporting Files下的 main.m
,將后綴改為.mm
.
稍微改動下
注意,從
Build Phases
刪除Classes
下的 main.mm
的文件.
10.添加 Run Script
- 修改
AppDelegate.h
修改 AppDelegate.m
12.修改 UnityAppController.h
你可能出現(xiàn)的錯誤
- Semantic Issue ->
Controller may reach end of non-void function
解決辦法: Mismatched Return Type
-> NO
2.duplicate symbol _main in xxxx.
解決辦法 :常見錯誤了. main文件重復(fù). 參照上面 步驟 9
刪除一個 main文件
3.Cloud not load NIB in bundle
解決辦法: 刪除 Launch Screen File
.
END~~~
參考鏈接: