个人也可以开发发布微信小游戏,为何不来试试?经过前段时间的折腾,终于上线了第一款微信小游戏。今天给大家来分享一下好友排行榜的功能,后续再给大家分享一下如何通过云开发来实现时间排行榜。
简介开发排行榜功能之前,大家首先要知道微信小游戏中主域和开放数据域的区别。用最简单的语言来描述他们的区别:在开放数据域有能力调用特定的api,例如(wx.setUserCloudStorage对用户托管数据进行写数据操作、wx.getFriendCloudStorage拉取当前用户所有同玩好友的托管数据)。其实我们实现好友排行榜只要利用这些api就能轻松实现。如果你还不清楚这个建议先查看一下微信小游戏api 微信小游戏api文档
对Creator如果创建开放数据域的同学可以先看一下官方提供的文档 Creator接入微信小游戏的开放数据域
在主域和开放数据域进行交互的时候,大家要注意一点。主域可传递数据给开放数据域,开放数据域名不能主动操作主域(包括回调的方式也是不行的)。主要交互流程可分成:
1、主域调用wx.getOpenDataContext()获取开放数据域
2、主域通过
openDataContext.postMessage({ message: 'showRanking', data: { //此处可传参数 value 只能是 primitive value。即 number、string、boolean、null、undefined。 }});向开放数据域发送消息
3、开放数据域通过
wx.onMessage(data => { switch (data.message) { case 'showRanking': //收到任务做对应操作即可 break; }});监听主域发送的消息
4、开放数据域调用
wx.getFriendCloudStorage()//拉取当前用户所有同玩好友的托管数据//当然想获取数据,必须要先存储数据。存储数据步骤和显示排行榜步骤相同,就不做介绍了。5、最后把获取来的数据展示出来就完成了。
总结好友排行榜的实现比较简单,这里就不做过多介绍,如果有疑问大家可以在评论区提出。