layabox之layadcc使用記錄(android)

最近在將微信小遊戲的包打成android的過程中,踩了一些坑。在此記錄一下。

layabox的android打包過程可以分爲如下3部分。

1,打包

2,打layadcc

3,將資源部署到服務器並且測試。

 

1,打包

此處爲使用腳本構建工程。參照的文檔爲:https://ldc2.layabox.com/doc/?language=zh&nav=zh-ts-6-3-0

這裏需要注意的一點,就是這個--url參數應該是什麼。

這個--url參數,作爲線上包的話,應該指向一個由遊戲工程打出來的一個web release。

--url就是指向這個web工程項目路徑下的index.js文件的url。

比如你部署到了www.mygame.com/game下。

那這個url就是https://www.mygame.com/game/index.js

這個js,作爲安卓的啓動頁,是必須的。

 

2,打layadcc。

這個layadcc,可以說是一種加密了的資源。可以分爲兩部分

具體流程參照:https://ldc2.layabox.com/doc/?language=zh&nav=zh-ts-6-2-0

1,被加密的資源。

2,對這些資源的描述文件。有filetable.bin,allfiles.txt,assetsid.txt,filetable.txt

其中,被加密的資源,是用於打到包裏去的。而描述文件,在打包的時候,和以後的更新都會用到。

layabox運行時候的邏輯是這樣的。

首先,去加載本地的描述文件。然後再根據打包時提供的地址,去下載該文件夾裏的update中的最新描述文件。

並且將最新的描述文件緩存。

當用到某個資源的時候,會對比描述文件,如果發現本地的文件不是最新,則會去打包時設置的web部署路徑下去下載最新的文件。

這裏發現了沒?打包的時候,用的是dcc文件,但是在更新的時候,用的是源文件!!!!!!!

而且layadcc有這樣一個特性,就是隻有打包時,本地的那個描述文件裏的文件纔會緩存,除此之外,其他的新文件,都是不緩存的!!!

所以要怎麼打包呢?請看3.

 

3,那這種機制的情況下,要如何打包才比較好呢?

官方的建議如下:

1,首先把所有的資源打成web 的release。然後將這個release打成dcc。這一步,要的是完整項目的dcc描述文件。

2,使用編輯器的排除功能,打一個精簡版的web release。其實就是希望玩家一進去有的資源。

3,將這個精簡版的資源,打到android的包裏去。

4,將第一步完整版的描述文件,覆蓋精簡版的描述文件。

 

這樣,就默認了打包時候的這些項目文件,都會緩存。而且這些文件,當線上有新版本的時候,就會去下載最新的並且緩存。

 

這些過程比較繁瑣,我寫了一些bat。供參考。

鏈接: https://pan.baidu.com/s/1crrYQ_sStPiZ7iLwFqSEdg 提取碼: h4ki 複製這段內容後打開百度網盤手機App,操作更方便哦

 

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