Related Posts Plugin for WordPress, Blogger...

5-27 Using Unity Cache Server And Building to Android

本章要來介紹部署到Android端的方法,輸出Android的APK檔案不需要像iOS一樣那麼麻煩,不需要先建立一個專案就可以直接輸出APK檔案,簽章的部分也很方便。再講輸出之前,先跟大家介紹一個好東西-Cache Server。

由於我們會常常需要切換多個平台進行測試,就很容易遇到切換的時候,Unity必須將相關資源重新匯入,如Unity官方所說:

Unity has a completely automatic Asset pipeline. Whenever a source Asset like a .psd or an .fbx file is modified, Unity detects the change and automatically re-imports it. The imported data from the file is subsequently stored by Unity in an internal format.This arrangement is designed to make the workflow as efficient and flexible as possible for an individual user. Furthermore, Assets must be reimported when you switch between desktop and mobile build target platforms. The switch can therefore take a long time for large projects.

簡言之,Unity會以他們的內部格式來儲存資源,不管是音訊、影片、3D模型等等,只要有修改就會自動重新Import,切換平台的時候也必須要重新Import。若使用Cache Server的話,就會自動緩存前一個平台的資源,切換的時候會從Cache Server上下載。

如果是單獨開發,可以將Cache Server建立在local,如果是團隊開發,可以買一台Server來建立,下載Unity提供的Server端即可,Server的作業系統建議選擇Linux/MacOS,Windows則容易因為檔案被Lock的問題產生不可預期的錯誤。更詳細的說明可以參考下列網址唷:
https://docs.unity3d.com/Manual/CacheServer.html

首先,選擇Unity/Preferences。

找到Cache Server的選項,目前預設是Disabled。

這次因為僅有我個人要使用,所以Mode選擇Local。Maximum Cache Size的話,如果電腦的硬碟容量夠大,可以盡量選擇大一點,或是等以後有需求再調整設定。按下Check Cache Size的話可以看目前佔用容量多少。

Cache Server的Local資料夾放在這邊,路徑中的Library的中文是資源庫。

接著,我回到Build Settings,將Platform從iOS切換到Android。

回到設定去看看,會發現Cache size變成1.05GB。這時因為切換平台的時候會將所有的Asset重新Import變成新的Asset,所以代表Cache Server上目前已存放了Android版本的資源。

然後我又將Platform切換回iOS,這時的Cache size變成1.92GB了,等待的時間真的非常漫長..........................

接下來驗證看看Cache Server有沒有發揮作用吧,重新將Platform從iOS切換到Android後,會發現Assets Progress的視窗中出現了Downloading from cache server的訊息了!

接下來就來介紹輸出Android的部分吧,通常只要直接按下Build按鈕,然後選擇儲存APK檔案的位置就可以了。但若是要上架的話,就必須要建立專用的簽證唷。按下Player Settings按鈕後,選擇Publishing Settings,會看見Keystore選項。預設如下圖,Unity會使用自動產生的debug keystore生成APK,但僅供Debug使用。

接著來介紹建立專用簽證的方法吧,首先選擇Create a new keystore選項,並按下Browse Keystore按鈕選擇儲存位置與名稱,輸入你要給該Keystore的Password。

接著在Key的Alias部分,選擇Create a new key。Keystore就相當於金鑰庫,所以你還必須建立金鑰才行。

接著請輸入相關資訊,Alias的部分就取名為noliahfantasy01吧,如果以後遊戲還會出2代、3代的話,那就必須建立新的key,並取名為noliahfantasy02、noliahfantasy03。密碼的部分則建議不要跟Keystore用的一樣。

Validity (years)選項是這個金鑰的有效期,Unity預設在50,Android官方則建議不要低於25。有效期一旦過了,就代表這個金鑰不能再使用,也代表這個App不能再更新嘍!接著要填寫一些類似個人資訊的東西,這些訊息不會顯示在App內,但會隨著金鑰被包進去APK裡面。

建立好之後,再輸入這個Key的密碼。

接下來就可以進行Build了!成功以後就會取得一個APK檔案,該APK檔案可以直接丟到手機內安裝測試,也可以上架到Google Play。上架的部分網路上有很多教學了,在此就不贅述嘍。

留言