微信跳一跳微信好友排行怎么做的?

微信跳一跳微信好友排行以及分享到群里查看群排行是怎么做的?有相关文档可以参考吗?

2赞

腾讯限制级SDK

我猜的:
1.把所有玩你游戏的微信用户及级别存到你自己的服务器数据库,(openId:腾讯用户唯一标识)
2.对比自己的数据库已存的用户

http:www.byease.com(宁夏佰易网络科技有限公司)(技术合作交流)

关系链数据使用指南: https://mp.weixin.qq.com/debug/wxagame/dev/tutorial/open-ability/open-data.html?t=201832

大概思路是:

1、代码分成主域(游戏代码)、开放数据域(微信好友关系链)。
2、开放数据域 调用 wx.setUserCloudStorage() 就可以把游戏记录保存到微信服务器上。
3、即可使用如下方法,获取用户成绩

wx.getFriendCloudStorage() 获取当前用户也玩该小游戏的好友的用户数据
wx.getGroupCloudStorage() 获取当前用户在某个群中也玩该小游戏的成员的用户数据

4、如何展示到游戏上?在开放数据域处理完数据,画到 【后台Canvas】 上,微信定义好了名词,叫 sharedCanvas 。然后再显示。

限制:

1、开放数据域 虽然可以调用关系链 API,但也仅能调用关系链 API,不要有保存服务器的想法,也不能把数据传递出来。
2、开放数据域 传出数据的唯一方法是,画图,传出来。
3、即使是画图传递出来,显示出来,也禁止截屏。

结论

好友排行榜可以实现,但也仅限展示,不要非分之想。

你是要copy出类似的功能, 还是想获取到微信好友?
微信数据就别想了, 腾讯只给自家游戏用的。

好的,我去试试

这样获取不到微信群里面的游戏用户,楼下有个方法我觉得可行,我去试一下

确认可以用么? 我这按教程写的,编译时方法都找不到,求解

KVDataList: [
{ “money”: “500” },
{ “战绩”: “第八关” }
],
我这样写的。但是报错了。setUserCloudStorage:fail KVDataList must be an Array 。我真的不知道KVDataList应该怎么传。。

你这么传当然是错的。应该:

[{key:“money”,value:“500”},{key:“战绩”,value:“第八关”}]

我现在遇到一个问题是,这么传提示是ok的,但是getFriendCloudStorage()拿不到这些数据,返回的数据数组是空,不知道哪里不对。。。。

我按你这么传,还是会报错。。setUserCloudStorage:fail KVDataList must be an Array

加个微信或者qq聊一下?

兄弟,你这么传当然不对啊。。。你传的是function!!

拿去吧:

setUserCloudStorage(data){ return new Promise((resolve, reject) => { wx.setUserCloudStorage({ KVDataList:data, success: res => { resolve(res); } }); }); }

btw: 你不用Promise的话,你就用success回调也是一样。哎,要是creator js支持async/await简直完美了。

就算你存了所有数据,你也找不到哪些是你的好友啊

不是可以get到么。

已经可以拿到数据了。谢谢。

贴上代码:

2赞

牛逼,完全正确啊。这个问题也纠结了我2天时间。

然后后面的怎么展示啊兄dei。

不是很能看懂。。。

还有个小问题,就是添加到桌面的功能微信有提供接口吗??

很有价值的帖子!!