測試、發布和分享小游戲
通過小游戲,用戶能夠十分輕松地在本地測試開發版本、自動化發布流程,以及與團隊分享構建版本。本文檔會詳細說明以下步驟:
1.通過本地服務器測試游戲
2.上傳構建版本
3.測試發布的構建版本
4.提交游戲以供應用審核
通過本地服務器測試游戲
小游戲體驗的很大一部分來自原生裝飾,這些原生裝飾在每個游戲會話前后添加到游戲中。為了方便開發以及測試,我們讓開發者能夠通過本地服務器運行游戲,提供與玩家在 Facebook 平臺中類似的體驗。此功能通過嵌入式測試引擎實現,只需少量配置。
通過 localhost 啟用 SSL
嵌入式測試引擎在?facebook.com?域下運行,因此,僅能通過?https?提供服務。為了在通過?https?提供的頁面中嵌入內容,還需要通過 SSL 提供嵌入式內容。以下步驟將說明如何設置提供安全內容的?localhost?服務器??赏ㄟ^多種方法設置,下文僅介紹其中一種。
1.通過?npm?安裝?http-server?包。?如果未安裝?npm,請遵循?Node.JS 網站中的安裝說明。鏈接(https://nodejs.org/en/download/)然后,運行以下命令:
$ npm install -g http-server
2.通過?openssl?創建私鑰和證書。?這是運行安全本地服務器所必需的。
$ cd path/to/my/game/> $ openssl genrsa 2048 > key.pem> $ openssl req -x509 -days 1000 -new -key key.pem -out cert.pem# Fill out necessary information
3.使用 SSL 通過 localhost 運行游戲。?私鑰和證書準備就緒后,可使用 SSL 通過 localhost 提供服務。Starts to serve via HTTPS, with cache disabled> $ http-server --ssl -c-1 -p 8080 -a 127.0.0.1 Starting up http-server, serving ./ through httpsAvailable on:
https://127.0.0.1:8080Hit CTRL-C to stop the server
4.之后,將瀏覽器指向?https://localhost:8080,即可顯示游戲正在運行。?您可能需要確認瀏覽器顯示的安全警告,然后才能繼續操作。
從瀏覽器運行嵌入式引擎
現在,通過安全連接從 localhost 提供游戲,可將游戲嵌入我們的引擎中。將瀏覽器指向此處:
https://www.facebook.com/embed/instantgames/YOUR_GAME_ID/player?game_url=https://localhost:8080
您應看到游戲在小游戲引擎中運行,如下所示:
此時,您應能夠通過在本地服務器上運行的游戲,使用小游戲 SDK 的所有功能。
出于安全原因,localhost?是唯一支持使用嵌入式測試引擎執行測試的域。
在特定對話中通過本地服務器運行游戲
您可以在特定環境中通過本地服務器運行游戲。如上所述,使用嵌入式引擎即可實現。您可隨后利用?FBInstant.context?方法(例如?switchAsync()、createAsync()?和?chooseAsync())切換到其他環境。
這使您可以有效地在對話環境中通過?localhost?運行游戲以及測試是否正確發送您的環境更新。
上傳構建版本
將游戲打包為一個 .zip 文件
小游戲內容在 Facebook 基礎設施上托管,因此,無需自行托管游戲內容或使用第三方服務。在準備好游戲進行測試后,將所有游戲文件打包為一個 .zip 文件。請注意,index.html?文件應位于此存檔的根文件夾中,而不應位于任何子文件夾中??赏ㄟ^兩種方法上傳捆綁包:
1.通過開發者網站上傳 .zip 文件
要上傳 .zip 文件,請點擊應用面板中的虛擬主機選項卡。從該選項卡的下拉菜單中選擇“小游戲”,然后單擊上傳版本,即可將 .zip 文件上傳到 Facebook 的托管服務中。
之后,構建版本會處理文件,僅需數秒時間。狀態更改為“待命”時,單擊“★”按鈕將構建版本推送到生產。
2.通過圖譜 API 上傳存檔
您也可以通過圖譜 API 調用上傳捆綁包。如果有自動化部署系統,這很有用。要執行此操作,需要通過虛擬主機版塊請求一個上傳口令,方法是單擊頂部的生成素材上傳訪問口令按鈕。
借助對話框中的口令,可向圖譜 API 提交以下調用以提交 .zip 文件。請注意,我們特意使用視頻子域,因為該網址配置為接收大型上傳文件。
curl -X POST https://graph-video.facebook.com/{App ID}/assets
-F 'access_token={ASSET UPLOAD ACCESS TOKEN}'
-F 'type=BUNDLE'
-F 'asset=@./{YOUR GAME}.zip'
-F 'comment=Graph API upload'
之后,游戲會在已上傳捆綁包列表中正常顯示。 可通過此調用與現有構建系統集成。
托管限制
請記住,Facebook 托管存在多項限制,其中最重要的是:
不支持服務器端邏輯(例如:php)。
上傳文件的總大小不超過 200MB。
每次應用程序上傳的文件數量不超過 500 個。
詳情請參閱虛擬主機參考文檔。
(鏈接:https://developers.facebook.com/docs/games/services/contenthosting)
測試發布的構建版本
擁有處于“生產”階段的構建版本后,您需要測試該構建版本,而不是測試在當前服務器中運行的構建版本。您可通過以下兩種方式中的任意一種完成測試。
1.在 Facebook 中運行游戲
要在動態消息中分享游戲,單擊分享你的游戲部分的分享按鈕。此操作可讓您在動態消息中分享游戲,通過任何平臺執行測試(桌面、iOS 或 Android)。
2.在 Messenger 中運行游戲
在 Messenger 的小游戲列表中,您和您的團隊(在應用中分配了“管理員”、“開發者”或“測試者”身份的用戶)應能夠看到處于開發階段的所有游戲的列表。此列表的標題為開發中。這可幫助您在 Messenger 中測試游戲,即使游戲尚未發布。
3.分享游戲鏈接
如 果已將主頁與游戲關聯,那么您也可以生成可分享的鏈接。如果您設置了智能助手,用戶點擊此鏈接后,會在 Messenger 中打開與智能助手的對話,并自動打開游戲。如果未設置智能助手,用戶點擊鏈接后將前往您的 Facebook 主頁,并自動從主頁打開游戲。無論是那種方式,點擊鏈接的任何用戶都能以適當的方式開始玩游戲。
提交游戲以供應用審核
對發布版本感到滿意后,您需要在“應用審核”版塊提交游戲供審核,以便我們的團隊能評估其質量及是否遵守我們的開放平臺政策。
(鏈接:https://developers.facebook.com/policy/#games)
請務必在提交游戲前查看我們的發布檢查表,(鏈接:https://developers.facebook.com/docs/games/instant-games/getting-started/launch-checklist)
確保游戲符合規定的所有條件。該指南還包含在游戲通過審核后發布游戲的方法說明。
后續步驟
現在,您已了解如何測試和發布游戲,請在提交游戲前查看發布檢查表:小游戲發布檢查表。另請參閱我們的最佳實踐板塊,了解游戲設計與更新建議。
為方便大家群策群力,我們創建了一個 Facebook Instant Game?? 交流群:814298516 。 歡迎同學們加入交流開發和運營經驗。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。