cocosCreator定制小游戲構建模板


1. 解決痛點

在開發微信小游戲過程中,需要在微信小游戲game.json加入一個配置鍵navigateToMiniProgramAppIdList,但常規通過構建發布game.json都是自動生成的,根本就不給你配置的機會.但如果不解決,需要在每次發布后,手動的在build目錄中找到game.json文件,手動添加配置.或者復制一個配置好的文件,每次構建完成后,就復制覆蓋.總之,很麻煩!

通過常規構建發布生成的game.json文件

{
  "deviceOrientation": "portrait",
  "networkTimeout": {
    "request": 5000,
    "connectSocket": 5000,
    "uploadFile": 5000,
    "downloadFile": 5000
  },
  "subpackages": []
}

我期望生成的game.json文件

{
  "author":"wx:464884492 回復 cocos 加群",
  "deviceOrientation": "portrait",
  "navigateToMiniProgramAppIdList": [
    "需要跳轉的小程序appid"
  ],
  "networkTimeout": {
    "request": 5000,
    "connectSocket": 5000,
    "uploadFile": 5000,
    "downloadFile": 5000
  },
  "subpackages": []
}

2. 項目中builder.json文件

在項目setting文件夾中,有一個builder.json文件.按照正常邏輯它應該和構建相關.湊巧的是在里邊剛好還有一個wechatgame的配置對象.在沒查閱文檔的情況下,憑直覺在這個加入我需要的配置

...
  "wechatgame": {
    "author":"wx:464884492 回復 cocos 加群",
    "REMOTE_SERVER_ROOT": "",
    "navigateToMiniProgramAppIdList": ["需要跳轉小程序appid"],
    "appid": "當前項目appid",
    "orientation": "portrait",
    "separate_engine": false,
    "subContext": ""
  }
...

一溜煙操作后,趕緊構建發布.可最終的結果是添加的配置並沒有如願的添加到game.json文件中.可這問題必須要解決,不生效,我也很絕望啊.

3. 構建模板

絕望又怎樣,還是要解決問題.日常百度,查文檔.功夫不負有心人,在官網找到了定制項目構建流程.可是看了這個文檔.一臉懵逼.雖然找到了方向,可是這文檔說的也抽象了.我實在不能理解,我最終的構建模板該是個什么樣子的.左思右想,不添加自定義模板也可以完成構建.說明,在編輯器安裝目錄中也有具體的構建模板,我復制過來就得了.

果不其然,在項目安裝目錄找到構建模板 C:\Program Files (x86)\CocosCreator\resources\builtin\weapp-adapter 里邊剛好有一個wechatgame.解放我雙手的稻草居然是你.於是乎我根據官網的提示,在我項目目錄里邊建立一個名為build-templates文本夾,然后把找到的wechatgame文件夾復制過來.我仿佛看到勝利的曙光了,趕緊構建發布.是的,並沒有出現問題.可是,當我打開微信開發者工具時,在控制台輸出一大串嘲諷紅色的錯誤信息.好吧,感覺又失敗了.

4. 借雞下蛋

不慌,要冷靜,仔細觀察生成的文件結構和模板中的文件結構,僅僅只是多了ressrc兩個文件夾.於是大膽假設,放棄從安裝目錄去拷貝模板文件,直接從默認構建發布的文件去復制就得了.所以,先將項目文件中build-templates文件改個名字,重新構建發布.然后再去build目錄中復制除了ressrc之外的所有文件.然后再模板文件中的game.json文件中添加自定義配置navigateToMiniProgramAppIdList,再次構建發布,打開微信開發者工具.這次終於成功.

5. 總結

知識雖小,重在積累.2020注定是不平凡的一年.加油!!

歡迎感興趣的朋友關注我的訂閱號“小院不小”,或點擊下方二維碼關注。我將多年開發中遇到的難點,以及一些有意思的功能,體會都會一一發布到我的訂閱號中
訂閱號


免責聲明!

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



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