- 排名
- 16594
- 昨日變化
  
- UID
- 159371
- 好友
- 0
- 蠻牛幣
- 298
- 威望
- 0
- 注冊時間
- 2016-7-28
- 在線時間
- 55 小時
- 最后登錄
- 2020-7-8
|
5蠻牛幣
場景:我們的Unity項目分為三部分,開發工程,安卓打包工程,iOS打包工程.
我們自己有個類庫叫Base,這個Base負責最基層的功能以供上層業務代碼使用調用.如資源路徑管理,與Timeline的支持管理.
比如需要繼承PlayableBehaviour并重寫OnBehaviourPlay方法.那這種情況.Base就需要引用到Timeline的PlayableBehaviour類.
換言之按照以前的做法就是引用UnityEngine.Timeline.dll文件即可,但現在Timeline成為了Package于PackageManager安裝與管理.
沒有了UnityEngine.Timeline.dll文件,故無法在VisualStudio添加引用了,研究了一下,發現位于Library/ScriptAssemblies中能找到Unity.Timeline.dll.
嘗試著復制一份到VisualStudio工程中并添加引用,此時Base.dll成功編譯生成了,將Base.dll放置至開發工程Assets/Plugins內.開發工程內運行一切正常,
啟動安卓打包工程,嘗試打包安卓應用時,會將所有資源與Base.dll與其他的業務代碼編譯生成的DLL拷貝至打包工程進行打包.但在Build的過程中出現了如下錯誤.
簡單的理解就是說Base.dll引用了UnityEngine.Timeline這個程序集(雖不知為什么,但Unity.Timeline.dll內代碼的命名空間就是UnityEngine.Timeline,不知為何把Engine去除了),但是UnityEngine.Time這個程序集不能被引用或找不到所在路徑.如下圖
Unity工程Packages中是有Timeline包的,版本為1.2.15.至此,打包流程被無奈的終止了.
已做過以下嘗試,無效,報的錯一模一樣:
1,將Base.dll與Unity.Timeline.dll文件拷貝至Unity工程Assets/Plugins目錄下,同時將Timeline從PackageManager中移除.
2,將Unity.Timeline.dll文件更名為UnityEngine.Timeline.dll后在VisualStudio重新引用并重新編譯.
|
|