中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何實現Facebook 小游戲快速發布

發布時間:2022-01-12 11:00:58 來源:億速云 閱讀:197 作者:柒染 欄目:移動開發

今天就跟大家聊聊有關如何實現Facebook 小游戲快速發布,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

小游戲快速入門

如何實現Facebook 小游戲快速發布

設置應用

即便您已有托管到 Facebook.com 的網頁游戲,或托管到移動應用商店的移動游戲,也需要為自己的小游戲創建一款新應用。您無法使用與其他應用相同的 Facebook 應用編號制作一款小游戲。

將類別設置為“游戲”

前往應用面板的基本設置版塊,確保將類別設置為游戲。保存更改。

為應用添加管理員、開發者和測試員

Facebook 正在逐步面向更廣泛的受眾推廣小游戲,您的游戲目前可能無法對所有用戶開放。要確保游戲的所有發開者和測試員擁有訪問權限,請在應用面板的用戶身份選項卡中將他們添加為應用的管理員、開發者或測試員(請參見下方截圖)。詳細了解用戶身份。

在應用面板中啟用小游戲功能

請注意:請勿向針對 iOS、Android 或 Web 環境配置的原有 Facebook 應用添加小游戲。為小游戲創建的 Facebook 應用編號不適用于其他平臺。

新建 Facebook 應用

要為應用啟用*小游戲功能,點擊導航菜單底部的 + 添加商品按鈕。 這一操作將打開應用中的可用產品列表。在列表中找到小游戲,并點擊開始按鈕。這一操作將為菜單添加一個小游戲版塊。確保開啟在小游戲平臺上架開關。保存更改,然后繼續。

SDK 第一步

導入

現在您已設置好應用,需要開始創建游戲客戶端。 游戲客戶端根目錄下需要有一個 index.html 文件。請首先從此文件導入小游戲 SDK。

<script src="https://connect.facebook.net/en_US/fbinstant.6.0.js"></script>

初始化

我們的 SDK 廣泛使用 Promises 來實現異步功能。您只能在 FBInstant.initializeAsync() 解析完成后與加載的用戶界面互動。

FBInstant.initializeAsync()

  .then(function() {        

     // Start loading game assets here

  });

游戲客戶端不會一次性下載所有捆綁包(.zip 文件),而是會搜索配置根文件 (fbapp-config.json) 和主文件 (index.html)。之后,它將開始執行主文件中所含的邏輯,并開始從此處下載資產。開發者可以全權控制資產加載的順序和時間。

在開始下載初始化游戲所需的資產后,您需要將加載進度告知 SDK,以便我們向玩家展示加載進度環。

var images = ['sprite1', 'sprite2', ...];

for (var i=0; i < images.length; i++) {

  var assetName = images[i];  

  var progress = ((i+1)/images.length) * 100;  

  game.load.image(assetName);

  // Informs the SDK of loading progress

  FBInstant.setLoadingProgress(progress);

}

// Once all assets are loaded, tells the SDK

// to end loading view and start the game

FBInstant.startGameAsync()

  .then(function() {

    // Retrieving context and player information can only be done

    // once startGameAsync() resolves

    var contextId = FBInstant.context.getID();

    var contextType = FBInstant.context.getType();

    var playerName = FBInstant.player.getName();

    var playerPic = FBInstant.player.getPhoto();

    var playerId = FBInstant.player.getID();

    // Once startGameAsync() resolves it also means the loading view has

    // been removed and the user can see the game viewport

    game.start();

  });

如需詳細了解 initializeAsync()、setLoadingProgress() 和 startGameAsync() 方法,請參閱 SDK 參考文檔。

測試和上傳

小游戲內容在 Facebook 基礎設施上托管,因此,無需自行托管游戲內容或使用第三方服務。在準備好游戲進行測試后,將所有游戲文件打包為一個 .zip 文件。請注意,index.html 文件應位于此存檔的根文件夾中,而不應位于任何子文件夾中。

要上傳 .zip 文件,請點擊應用面板中的虛擬主機選項卡。從該選項卡的下拉菜單中選擇“小游戲”,然后單擊 +上傳版本,即可將 .zip 文件上傳到 Facebook 的托管服務中。

之后,構建版本會處理文件,僅需數秒時間。狀態更改為“待命”時,單擊“★”按鈕將構建版本推送到生產。

如何實現Facebook 小游戲快速發布 

之后,您可以在移動設備中測試構建版本。現在,在 Messenger 內的游戲列表中,您可以在“開發中”版塊下看見已發布的構建版本。為了加快開發流程,您可以參考此指南,了解如何通過圖譜 API 從命令行上傳構建版本,或者如何直接從開發服務器進行測試:測試、發布和分享小游戲

游戲環境更新

我們已經介紹過使用小游戲 SDK 的基本知識,現在來看看如何讓您的游戲與游戲環境互動。

我們用游戲環境一詞來定義可以玩游戲的任何環境。更多情況下,游戲環境是指 Messenger 對話,但如果游戲不是在 Messenger 中玩,游戲環境也可以指其他各種位置,例如 Facebook 帖子或小組。

以下示例說明了如何發送游戲環境更新及其在 Messenger 對話中的展示效果。

第 1 步:在配置文件中聲明模板

為了聲明自定義更新,您需要創建名為 fbapp-config.json 的配置文件,并將其放在捆綁包的根目錄中,與 index.html 文件放在一起。如需詳細了解受支持的配置,請參閱捆綁包配置部分。 在本示例中,文件內容應該如下所示:

{

  "instant_games": {

    "platform_version": "RICH_GAMEPLAY",

    "custom_update_templates": {

      "play_turn": {

        "example": "Edgar played their move"

      }

    }

  }

}

通過自定義更新模板配置,我們可以為每個特定的自定義更新分配一個編號,從而更好地進行分析。您必須為所有游戲分配模板編號。

第 2 步:使用 updateAsync 發送自定義更新

在配置文件中聲明模板后,便可將模板用于填充 FBInstant.updateAsync 中的必填 template 字段。以下示例說明井字棋游戲如何利用調用通知對手輪到他們出棋。您可以在右側看到消息的展示效果。

  // This will post a custom update. If the game is played in a messenger

// chat thread, this will post a message into the thread with the specified

// image and text message. And when people launch the game from this

// message, those game sessions will be able to access the specified blob

// of data through FBInstant.getEntryPointData().

FBInstant.updateAsync({

  action: 'CUSTOM',

  cta: 'Play',

  image: base64Picture,

  text: {

    default: 'Edgar played their move',

    localizations: {

      en_US: 'Edgar played their move',

      es_LA: '\u00A1Edgar jug\u00F3 su jugada!'

    }

  }

  template: 'play_turn',

  data: { myReplayData: '...' },

  strategy: 'IMMEDIATE',

  notification: 'NO_PUSH'

}).then(function() {

  // closes the game after the update is posted.

  FBInstant.quit();

});

 如何實現Facebook 小游戲快速發布

有關自定義游戲環境更新的更多信息,請參閱我們的小游戲 SDK 參考文檔。

如需查看相關最佳實踐指南,了解何時向其他玩家發送消息、何時向他們發送通知以及最好在游戲環境更新中添加哪些內容,請參閱我們的最佳實踐部分。

請注意,游戲環境更新不會發送到 Messenger 以外的地方。通過使用 context.getType() 方法和檢測 THREAD 來定制游戲體驗非常有用。您可以使用 context.switchAsync、context.chooseAsync 或 context.createAsync 切換到更為合適的游戲環境。

(可選)設置游戲智能助手,再次吸引玩家

小游戲的一項重要功能是能附加 Messenger 平臺智能助手。這項功能雖為選擇性配置,卻為游戲提供了一個強有力的再參與渠道。以下指南說明了如何創建和設置游戲智能助手。

第 1 步:創建主頁

如需創建游戲智能助手,您首先需要創建 Facebook 主頁。主頁要正確地與小游戲關聯,需要具備一些特殊的屬性:

主頁類別需要是應用主頁

主頁名稱需要包含應用名稱。

主頁不能與其他應用關聯。

您可以前往“應用面板”,在小游戲產品的應用主頁版塊創建滿足這些特殊條件的主頁。 在執行下一步操作前,請確保應用主頁版塊如右圖所示:

如何實現Facebook 小游戲快速發布

注意:如果小游戲未與上述類型的主頁正確關聯,智能助手將不會收到 messaging_game_plays 事件

第 2 步:激活智能助手

創建主頁后,您需要確保響應其消息 webhooks。Webhooks 是在向您的主頁發送消息事件時,我們向您的后端發送的 HTTP 調用。之后,您的服務器的邏輯將決定如何正確地響應每個事件(如果響應適用)。 如需將服務器的端點與主頁事件相關聯,請按照 Messenger 平臺快速入門教程中的說明為主頁啟用智能助手。下表介紹了將智能助手與小游戲關聯所需的 webhooks 和權限:

部分 值

主頁事件

messages 和 messaging_game_plays

權限

pages_messaging

小游戲智能助手僅可使用標準消息和 GAME_EVENT消息標簽,不能使用 pages_messaging_subscriptions。

如果您的智能助手具有需要用到訂閱消息或客戶匹配的其他功能,您應創建單獨的應用并重新申請 Messenger 平臺權限。

第 3 步:響應 messaging_game_plays webhooks

正確配置智能助手后,您的服務器端應用程序將開始在玩家每次關閉小游戲時接收 messaging_game_plays webhooks。下面是服務器端應用程序檢測到并響應一個 webhook 的示例。

if (event.game_play) {

  var senderId = event.sender.id; // Messenger sender id

  var playerId = event.game_play.player_id; // Instant Games player id

  var contextId = event.game_play.context_id;

  var payload = event.game_play.payload;

  var playerWon = payload['playerWon'];

  if (playerWon) {

    sendMessage(

      senderId,

      contextId,

      'Congratulations on your victory!',

      'Play Again'

    );

  } else {

    sendMessage(

      senderId,

      contextId,

      'Better luck next time!',

      'Rematch!'

    );

  }

}

您可以參閱 Messenger 平臺文檔,詳細了解 webhook:“玩游戲”Webhook 文檔。

第 4 步:吸引玩家重回游戲

以下是如何使用圖譜 API 向玩家發送 game_play 按鈕的示例。

curl "https://graph.facebook.com/v2.6/me/messages?access_token=<PAGE_ACCESS_TOKEN>"

   -X POST

   -H "Content-Type: application/json"

   -d '{

  "messaging_type": "UPDATE",

  "recipient": {

    "id": "<RECIPIENT_ID>"

  },

  "message": {

    "attachment": {

      "type": "template",

      "payload": {

        "template_type": "generic",

        "elements": [

          {

            "title": "It has been a while since your last game. Time to get back",

            "buttons": [

              {

                "type": "game_play",

                "title": "Play Tic-Tac-Toe.",

                "payload": "{}",

                "game_metadata": {

                  "context_id": "<CONTEXT_ID>"

                }

              }

            ]

          }

        ]

      }

    }

  }

}'

 如何實現Facebook 小游戲快速發布

您可以參閱 Messenger 平臺文檔,詳細了解此按鈕:“玩游戲”按鈕文檔。

第 5 步:遵循我們的指南和政策

發布至生產階段后,您的游戲智能助手應進入 Messenger 平臺提交流程。提交智能助手之前,請確保遵守下面的最佳實踐:

建議:

向玩家提供相關、及時且有價值的更新。如需獲取更多信息,請訪問我們的最佳實踐版塊。

給予用戶掌控權(例如:讓用戶確認他們是否想要接收通知以及以接收的頻率)。

對玩游戲按鈕使用入口點數據,以環境相關的方式加載游戲。

為智能助手設置與游戲相同的名稱。

利用社交更新,如回合提醒、比賽結果、限時獎勵和挑戰。

確保為玩家提供適當的獎勵刺激,促使他們通過智能助手消息打開游戲。為此,您可使用消息負載為玩家提供有價值的游戲內獎勵。一般來說,如果智能助手消息打開的是游戲的開始頁面,這條消息便沒有什么價值。

使用固定菜單提供常見操作,如啟動游戲。

設置默認操作,在自定義更新中使用 game_play,以便整個圖片都能將用戶帶入游戲中。

通過智能助手公布新功能或內容。

針對每位用戶優化每天的消息發送時段,考慮用戶所在的時區。

借鑒 Messenger 智能助手的通用最佳實踐。

請勿:

在玩家關閉游戲后立即發送消息。

發送沒有任何背景信息的消息再次吸引玩家(例如:“立即回到游戲中!”)。建議首選包含豐富背景信息的消息來重新吸引玩家(例如:“你的偵查員為你帶回了更多信息”)

使用其他 Facebook 用戶的口吻,或誤導玩家以為他們好友在與他們溝通。

在用戶屢次不想加入游戲的情況下繼續向他們發送智能助手消息。這種情況將適用政策限制,并阻止您發送消息。當前的限制為,自最后一次游戲會話結束后 10 天最多可發送 5 條消息。如需詳細了解,請參閱我們的開放平臺政策文檔中的第 9.4 條

將 messaging_type 設置為 RESPONSE 或 UPDATE 以外的其他任何值

鏈接至任何應用商店。

看完上述內容,你們對如何實現Facebook 小游戲快速發布有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

天门市| 天峨县| 曲靖市| 福建省| 麻城市| 江安县| 泰来县| 和平县| 深泽县| 青州市| 仁怀市| 兴隆县| 岳普湖县| 无锡市| 陆川县| 平利县| 沧州市| 泰州市| 广东省| 汉川市| 政和县| 黑水县| 湘阴县| 福建省| 河东区| 兴海县| 仙桃市| 博客| 定日县| 长垣县| 七台河市| 大同市| 双牌县| 迁安市| 昌乐县| 娱乐| 福州市| 西峡县| 麻城市| 银川市| 阿瓦提县|