天天看點

記錄一下unity 打包Xcode以及上傳testflight的一些坑---untiyplayersettingsunity内設關于playersettings的一些選項。

unity内設關于playersettings的一些選項。

寫在最前:由于手欠,開發時将公司電腦的系統更新到了最新的macOS Catalinna 10.15.2,于是打開untiy2017導入項目時,發現不管導入什麼格式的音頻資源,unity都會卡死- -。也是懵逼了,後來查了資料,也不曉得是unity的鍋還是macOS的鍋,總之把unity更新到2018以後的版本就會解決這個問題。。

1背景機制

(但是unity預設的按home鍵時會暫停遊戲,此處的設定隻能設定按home鍵時程式是挂起suspend還是退出exit還是自定義custom),但是嘗試做一個背景播放音頻的app時,發現無論怎麼自定義,程式都會在點選home鍵時暫停app。mono的update那些函數并不會執行,unity機制下的所有代碼似乎都會停止。音頻播放随之就會停止,網上搜尋了很多辦法,例如在xcode工程裡加入如下代碼,切背景時,目前音頻會繼續執行,但是播放完目前曲目時并不會自動播放,因為自動播放的那套代碼還是C#寫的,始終運作在unity的機制裡,遂放棄。這是代碼:

//unity背景播放音樂
    [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil];
    [[AVAudioSession sharedInstance] setActive:YES error: nil];
    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
           
記錄一下unity 打包Xcode以及上傳testflight的一些坑---untiyplayersettingsunity内設關于playersettings的一些選項。

2 關于splash

pro版是支援自定義splash的,但是操作過程中發現。設定unity的logo圖檔時,自定義圖檔都會被縮放居中,以logo形式去顯示。由于我想要的是一個全屏顯示的效果,折騰了一番之後遂放棄,有哪位大哥知道如何在unity内設定一個全屏的splash頁面的請不吝賜教。于是在後面的xcode工程中設定。unity裡面隻設定了icon。splash那一欄統統清空不設定。

3關于xxxshader的錯誤

由于工程最初是在Android下,playersettings-othersettings下的graphics apis預設的是metal,并沒有随着我切換iOS平台而切換過來,是以打包運作會報錯。原因是iOS并不支援metal,此處應設定為opengles3。如圖:

記錄一下unity 打包Xcode以及上傳testflight的一些坑---untiyplayersettingsunity内設關于playersettings的一些選項。

4包名及公司名的設定

Company Name和Product Name最好直接設定為在蘋果開發者賬号中申請的那個,這樣打完xcode包之後會直接生成對應的Company Name和Product Name,友善打ipa包。(當然打包前還是仔細對照一下看看對不對- -)

5打包 Build

build時如果之前build過,在對應目錄打包時會有提示問你是要replace(替換)append(追加),例如xcode裡有自定義的c,c++代碼。這裡選擇append不會删除之前的代碼,不過如果打包有什麼異常的話,這裡建議直接點replace,生成新的包。