單機遊戲魔塔學院的安卓版本打包經驗小結(一)

目錄

  • 0. 背景
  • 1. 打包總覽
  • 2. 打包前設置
  • 3. 其他SDK加入
  • 4. UniPack使用
  • 5. 包體腳本操作
  • 6. 流程自動化
  • 7. 渠道提審反饋的問題
  • 8. 未來計劃
  • 9. 附錄

其中第一部分(本文)爲0-4節,而第二部分爲5-9節。

0. 背景

本文以Unity3D引擎的單機遊戲魔塔學院(一款益智類的單機休閒手遊)爲例,以運營商(移動,聯通,電信)短信代理收費爲盈利手段,分享如何打包安卓版的各種渠道的發行版本,包括打包具體步驟,可腳本自動化的部分以及在提審過程中反饋的問題。

1. 打包總覽

圖1 描述了單機遊戲安卓打包參考流程,主要分爲四個階段,即:a)由Unity項目工程導出Android項目工程;b)由android項目工程導出app;c)app導入,通過Unipack打出候選安裝包;d)必要的手動操作直至發行版本。


圖1. 單機遊戲安卓打包參考流程
圖1. 單機遊戲安卓打包參考流程

注:第三步UniPack公司定製的打包工具,其目的是按某個發行渠道的要求正確接入至Apk,具體來說:將Apk包反編譯後進行加入渠道要求的jar包,修改AndroidManifest.xml(添加activity,permission)等操作。工具雖不開放,但其操作流程可以借鑑。
接下來 第2-5節按照上圖的參考進行較詳細的說明。

2. 打包前設置

首先,在遊戲製作時,需要在Unity的C#腳本代碼中註冊商品,而商品的ID信息是向運營商申請的商品計費點的標示碼。注意:因爲遊戲是單機的,所以在遊戲的登陸(一般單機也沒有登錄步驟)和支付流程並沒有遊戲服務器的參與。具體可以參考Android支付接入-移動遊戲基地
其次,在Unity3d工程中,菜單欄File/Build Settings,選擇平臺Android,點擊Player settings,設置橫豎版,Icon,閃屏,Bundle Id,version等必要的參數。


圖2-1. 菜單欄File/build settings 界面
這裏寫圖片描述
圖2. 菜單欄File/build settings 界面(上),player Settings界面(下)

選中Google Android Project,點擊Export導出成Android項目工程。導出目錄結構如圖3,一般的安卓項目工程目錄結構。


這裏寫圖片描述
圖3. 魔塔學院安卓項目工程目錄結構

3. 其他SDK加入

打開eclipse-ADT,導入第1步導出的工程。若項目需要,接入除分發渠道外的其他SDK,例如微信(易信)分享。待接入完成之後,在eclipse-ADT中打包成已簽名(或未簽名)的apk包。

4. UniPack使用

UniPack目的是按某個發行渠道的要求正確接入至Apk。
因爲UniPack是公司定製的打包工具,這裏不便詳細說明。簡約地說,UniPack主要做了一下四件事情:
- 將Apk包反編譯
- 加入渠道要求的jar包
- 修改AndroidManifest.xml(添加activity,permission)等操作
- 在assets和res文件夾中添加渠道要求的資源文件
- 將工程目錄重新編譯成apk並簽名

讀者可以其借鑑操作流程。

第一部分呢(本文)目錄:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章