1. 程式人生 > >微信小程式小遊戲開發文件,小遊戲快速上手教程

微信小程式小遊戲開發文件,小遊戲快速上手教程

微信小遊戲快速上手教程

檔案結構


小遊戲只有以下兩個必要檔案:

  1. game.js 小遊戲主程式入口
  2. game.json 配置檔案

執行環境


  1. 小遊戲的執行環境跟小程式類似,執行在 JavaScriptCore 中,因此沒有 DOM、BOM API。
  2. 與小程式一樣,小遊戲每次釋出需要經過稽核。我們在小程式和小遊戲中都移除了動態執行程式碼的能力,包括以下呼叫方式:
    • eval 函式
    • setTimeout、 setInterval 函式第一個引數傳入程式碼字串執行
    • 使用 Function 傳入字串建構函式
    • 使用 GeneratorFunction 傳入字串構造生成器函式

HTML5 遊戲適配指引


現有 HTML5 遊戲希望移植到小遊戲環境,主要需要針對小遊戲做以下適配:

  1. 所有 DOM、BOM API 改成小遊戲相應的 API 呼叫方式
  2. 避免在遊戲中使用動態執行程式碼的能力

前期為了減少遊戲移植成本,我們提供了一個 Adapter ,它基於小遊戲環境模擬封裝了一套 BOM、DOM API 暴露到全域性。

配置項


遊戲小程式開發者通過在根目錄編寫一個 game.json

 檔案進行配置,開發者工具和客戶端需要讀取這個配置,完成相關介面渲染和屬性設定。

key 資料型別 說明 預設值
deviceOrientation String 支援的螢幕方向 portrait
showStatusBar Boolean 是否顯示狀態列 false
networkTimeout Number 網路請求的超時時間,單位:毫秒 60000
networkTimeout.request Number wx.request 的超時時間,單位:毫秒 60000
networkTimeout.connectSocket Number wx.connectSocket 的超時時間,單位:毫秒 60000
networkTimeout.uploadFile Number wx.uploadFile 的超時時間,單位:毫秒 60000
networkTimeout.downloadFile Number wx.downloadFile 的超時時間,單位:毫秒 60000

deviceOrientation

說明
portrait 豎屏
landscape 橫屏

示例配置

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