unity3D與iOS原生工程項目合并以及合并過程中的問題

由于公司項目的需要,需要將unity3D工程跟原生工程合并, 所以不得不接觸unity3D, 本文是將unity3D導出的iOS代碼移植到Xcode本地建的工程中, 上代碼:

首先,總體來說,總的步驟分為兩大塊, 第一,你需要從unity3D中導出Xcode第二,你需要將導出的iOS代碼部分移植到你想要的本地iOS項目中.

第一部分, unity3D導出Xcode項目

1.打開你的unity工程,然后點擊上邊菜單欄file中的build settings

1.png

2. 接著會彈出一個如下的框, 點擊switch platform 選擇iOS平臺,

3. 點擊player settings... 配置參數如下圖

4. 配置完成后點擊build, 等待完成,這個過程可能會時間長點,稍安勿躁, 完成之后是這樣的

5.然后打開文件iOS文件夾是這樣的,我們需要的重要核心的代碼都在畫紅線的這幾個文件夾中,所以,我們下面就需要把這幾個畫紅線的文件夾拷貝到我們需要的iOS原生項目中.

第一部分導出Xcode工程已經完成,這部分很簡單, 接著,我們就開始第二大部分,也是很容易出錯的地方,尤其是配置需要注意.

第二部分, unity3D導出Xcode項目導入到原生的iOS項目中

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

2.修改bit code為NO

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

4.將Classes,Libraries,MapFileParser.sh拖入到項目(選中Copy items if needed,選中Create groups)

將Data拖入到項目(選中Copy items if needed,選中Create folder references)

注意:文件拖進工程的方式不完全一樣,注意勾選的地方

5.添加framework(注意Optional的三個)

6.添加Header Search Paths和Library Search Paths

7.other C Flags -> -DINIT_SCRIPTING_BACKEND=1

8.添加User-Defined (UNITY_RUNTIME_VERSION版本號與導出工程的Unity版本號需要一致)


9.添加Run Script


10.把Unity/Classes/Prefix.pch的代碼復制到新建的pct文件, 并把classes文件夾下的pct文件刪除,注意,這里的刪除并不是徹底的刪除, 而是從列表中刪除,選擇中間這個, 以下步驟中所說的刪除都是這個意思,請牢記哈!

11. 將Classes/main.mm全部內容復制到main.m 并把擴展名改為.mm

12. 修改UnityAppController.h

13.在AppDelegate.h .m中添加如下代碼


到這里基本上已經完成從本地iOS跳轉到Unity項目里了,接下來,是我在做的過程中遇到的問題.

1.Unknown type name 'UnityViewControllerBase'

解決辦法就是把它改成UIViewController


2.iOS本地應用跳轉unity的時候出現黑屏

原因是你的u3d工程集成了EasyAR插件,而這個插件下有個Assets/Plugins/iOS/EasyARAppController.mm,

@interface EasyARAppController : UnityAppController,這是整個app啟動時的第一個controller,自己修改合并這個controller就OK了

或者是將EasyARAppController.mm的內容復制到你的自定義的子類中去,然后刪除引用也是OK的

看下圖

在UnityAppController.mm里這個方法中寫

然后就OK了

以上就是全部了呦,歡迎大家指正, 多多交流!!!

// 轉載請注明原地址呦!

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,156評論 6 531
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 98,401評論 3 415
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 176,069評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,873評論 1 309
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 71,635評論 6 408
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 55,128評論 1 323
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,203評論 3 441
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 42,365評論 0 288
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 48,881評論 1 334
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 40,733評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,935評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,475評論 5 358
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,172評論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,582評論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,821評論 1 282
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,595評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 47,908評論 2 372

推薦閱讀更多精彩內容

  • 前言 最近在實驗室做了一個項目,用到了藍牙通訊和U3D的交互,都有很多坑,如:IOS與Unity3D界面之間的跳轉...
    Larrycal閱讀 23,680評論 34 53
  • 提示:2017年7月13日更新 相關文章:1>. Unity中文社區2>. IL2CPP 構建大小優化 前言:項目...
    小熊翻譯App閱讀 7,398評論 24 23
  • 圖文/王天鴻 四月二十三日! 這個被從日歷上圈定并命名的日子,與其說是用來讀書的日子,毋寧說是對書籍、閱讀、...
    王天鴻閱讀 684評論 2 2
  • 下午在微信朋友圈看到這樣一則感慨: 其實我是很認可這位朋友的說法的,就像十年前俞敏洪在《贏在中國》中的一段話,現在...
    8c8392d58a4a閱讀 498評論 0 0
  • 今年我二十四五歲,身處最基層,只為了初心而常常沒日沒夜加班加點。入夏,每當看到路上的姑娘們打扮得一個個像小仙女...
    冬月初十閱讀 203評論 0 1