手机版

微信小游戏好友列表快速开发教程

时间:2021-12-08 来源:互联网 编辑:宝哥软件园 浏览:

要制作这个好友列表,必须有好友的记录分数,然后进行排序,最后在UI上呈现数据,可以分为以下步骤:

保存每个用户的分数得到好友列表,得到好友的分数渲染排行榜微信小游戏好友排行榜快速开发教程(图1)

保存每个用户的分数

要保存每个用户的分数,需要调用微信的云存储API持久存储用户的分数。

//保存用户数据。注意限制单个数据的容量不超过1024字节。//单个用户数据的总数不应超过128个wx.setUserCloudStroage(对象)复制代码微信小游戏好友排行榜快速开发教程(图2)

//最高存储分值为var分值=100;var kvScore={'key':'score ',' value ' :s core };wx . setusercloudstroage({ ' KVDataList ' :[kvScore]},' success ' : function(){//});复制代码

获取好友列表,并获取好友的分数

想要保存玩家在游戏中的分数,需要调用微信的云存储APIwx.getFirendCloudStorage获取玩家的微信好友数据,从而获得每个好友的最高分数。

值得一提的是,微信的这个界面,偷偷使用了它的微信社交关系链。

返回列表中调用了接口wx.setUserCloudStroage的用户。

微信小游戏好友排行榜快速开发教程(图3)

渲染排行榜

对分数进行排序,获得排行榜。

让sharedCanvas=wx . getsharedcanvas()函数drawRankList(data){ data . foreach((item,Index)={//.})} wx . getfriendcloudstorage({ succe : REs={ Letdata=REs . data drawinklist(data)})复制代码。注意这个sharedCanvas,它是一个独特的画布,和小游戏里的画布不是一回事。

微信小游戏好友排行榜快速开发教程(图4)

使用sharedCanvas自定义显示玩家的用户排行榜。

重要说明

上述微信界面只能在微信游戏的子领域使用。微信官网也叫开放数据域,但其实应该叫封闭数据域。为什么这么说?由于子域的js代码执行环境和游戏本身的代码执行环境是隔离的,不能相互通信,子域只能接收外部消息(比如游戏最高分),但不能发出消息(用户的好友关系链数据无法发送到开发者服务器),内存不共享,意味着开发者无法获取微信的社交关系链数据。在这样的封闭条件下,开发者只能在子域的画布上显示带有个性化UI元素的排名数据。

版权声明:微信小游戏好友列表快速开发教程是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。