cocos creator 微信小游戏排行

作者:jcmp      发布时间:2021-04-29      浏览量:0
一、主包设置:1、项目-构建发布...(

一、主包设置:

1、项目-构建发布...(Ctrl+Shift+B)

发布平台选择“微信小游戏”

勾选MD5 Cache

输入appid

开放数据域代码目录:wx-open-data-project

二、2、子包设置

1、游戏名称与主包开放数据域代码目录一致:wx-open-data-project。

2、发布平台选择:微信小游戏开放数据域

3、发布路径:工作目录下/runWork\build\wechatgame。

三、母包向微信后台发送最高分:

onSendScoreToWX(){ wx.setUserCloudStorage({ KVDataList: [{ key: 'MaxScore', value: Math.random()*100+'' }], success: res => { console.log(res); // 让子域更新当前用户的最高分,因为主域无法得到getUserCloadStorage; let openDataContext = wx.getOpenDataContext(); openDataContext.postMessage({ type: 'updateMaxScore', }); }, fail: res => { console.log(res); } }); }

四、子包接受数据。

wx.onMessage( data => { if (data.type == 'updateMaxScore') { console.log(data.type); this.initUserInfo(); this.initFriendInfo(); } });

五、子包请求排行数据,需要自己排序。

initFriendInfo () { wx.getFriendCloudStorage({ keyList: ["MaxScore"], success: (res) => { cc.log(res.data); res.data.sort((a, b) => { return parseInt(a.KVDataList[0].value) - parseInt(b.KVDataList[0].value); }) this.content.removeAllChildren(); for (let i = 0; i < res.data.length; ++i) { this.createUserBlock(res.data[i],i); } }, fail: (res) => { console.error(res); } }); },

六、问题:

1、setUserCloudStorage 出错,invalid data ;

检查数据格式是否正确,两个必须都是string