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,操作更方便哦

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM