借助小游戏,您可以通过多种方式促进玩家之间的社交互动。
FBInstant.player.getConnectedPlayersAsync()
方法可以检索通过 Messenger 与当前玩家建立联系的用户名单。此方法将仅返回已授权游戏访问自己信息的关联用户。
注意:此方法不会区分哪些玩家在同一游戏环境中玩过游戏,哪些玩家没有。您可以通过 FBInstant.context.getPlayersAsync()
获取特定于此游戏环境的信息。
获取玩家好友 FBInstant.player.getConnectedPlayersAsync() .then(function(players) { _leaderboard.render(players); }); 获取相应游戏环境的玩家 FBInstant.context.getPlayersAsync() .then(function(players) { _leaderboard.render(players); }); |
用户可以在许多不同的环境中玩小游戏,例如 Messenger 对话或动态消息。借助以下 SDK 调用,无论用户从哪里进入游戏,您都可以在任意会话中切换环境。这意味着,您可以允许玩家切换至其他对话,而无需退出并重新打开游戏。
我们提供三种不同的更改游戏环境的方法:
FBInstant.context.chooseAsync()
,此方法会打开一个原生对话框,让玩家选择想要更改为哪个对话。FBInstant.context.switchAsync(contextId)
,此方法支持开发者将玩家发送到预定义的游戏环境(例如,继续之前在不同对话中开始的比赛)。FBInstant.context.createAsync(playerId)
,此方法会尝试创建包含指定玩家的游戏环境(例如,在玩家与推荐的好友之间开始一场比赛)。使用我们提供的工具,您的游戏可以通过游戏环境和匹配 API 将玩家带入新环境。我们发现,与其他玩家一起玩的用户其最终留存情况优于独自玩游戏的玩家。原因如下:
让游戏玩法充满有意义的社交动力,可为您的小游戏增加魅力,激起玩家的热情,让他们乐意与好友分享您的游戏。
推荐的使用方法:
调用 matchPlayerAsync()
后,您的游戏会尝试将当前玩家与其他玩家匹配到游戏环境中。我们已添加一个额外参数,用于指定您是希望游戏在玩家配对后立即切换到新创建的环境中,还是等到玩家在 Toast 中点击玩游戏后再切换。
共有 2 种匹配机制:
在一个已匹配的对话中,默认的最小和最大玩家人数分别为 2 和 20,具体取决于同时尝试匹配的玩家人数。可在 fbapp-config.json 中更改此值。