Facebook測試、釋出和分享小遊戲(開發小遊戲)

xiaojiezi_2005發表於2018-08-03

透過小遊戲,使用者能夠十分輕鬆地在本地測試開發版本、自動化釋出流程,以及與團隊分享構建版本。本文件會詳細說明以下步驟:

1.透過本地伺服器測試遊戲

2.上傳構建版本

3.測試釋出的構建版本

4.提交遊戲以供應用稽核

透過本地伺服器測試遊戲

小遊戲體驗的很大一部分來自原生裝飾,這些原生裝飾在每個遊戲會話前後新增到遊戲中。為了方便開發以及測試,我們讓開發者能夠透過本地伺服器執行遊戲,提供與玩家在Facebook 平臺中類似的體驗。此功能透過嵌入式測試引擎實現,只需少量配置。

透過localhost 啟用 SSL

嵌入式測試引擎在facebook.com 域下執行,因此,僅能透過 https 提供服務。為了在透過 https 提供的頁面中嵌入內容,還需要透過 SSL 提供嵌入式內容。以下步驟將說明如何設定提供安全內容的 localhost 伺服器。可透過多種方法設定,下文僅介紹其中一種。

1.透過  npm  安裝  http-server  包。  如果未安裝 npm,請遵循 。連結()然後,執行以下命令:

> $ 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:

4.之後,將瀏覽器指向  ,即可顯示遊戲正在執行。  您可能需要確認瀏覽器顯示的安全警告,然後才能繼續操作。

從瀏覽器執行嵌入式引擎

現在,透過安全連線從localhost 提供遊戲,可將遊戲嵌入我們的引擎中。將瀏覽器指向此處:

https://www.facebook.com/embed/instantgames/YOUR_GAME_ID/player?game_url=

您應看到遊戲在小遊戲引擎中執行,如下所示:


此時,您應能夠透過在本地伺服器上執行的遊戲,使用小遊戲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 {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 。歡迎同學們加入交流開發和運營經驗。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31548548/viewspace-2169071/,如需轉載,請註明出處,否則將追究法律責任。

相關文章