法一:Cocos官方WXSubContextView组件
CocosCreator接入微信数字域官方文档
法二:纯微信API实现
开源项目:https://github.com/weishuluo/creator_wechat_rank_demo
教程:https://forum.cocos.com/t/demo-api/64299
注意事项
1,设置数字域目录
构建后,在build/wechatgame目录下默认是没有sub目录的。
一般的方式是手动创建sub目录,然后把数据域代码和资源放到sub内
高级的方法是通过构建模版来自动添加sub目录和其内部的资源.
在工程目录(assets文件夹所在目录)下创建 build-templates/wechatgame/sub 即可。
把数据域代码index.js和所需资源扔到该sub目录。
然后在构建工程的时候就会自动把该sub文件夹放到build/wechatgame目录下
2,微信端KVData的key和value均为string类型
官方文档
这点特别注意,否则可能导致存储失败。
比如:setUserCloudStorage
public static uploadLevelOpen(level) {if (!window.window["wx"]) returnlevel = level.toString()window["wx"].setUserCloudStorage({KVDataList: [{ key: RankConsts.OpenDataKeys.LevelKey, value: level },],success: (res) => {console.log("uploadLevelOpen success:res=>", res)},fail: (res) => {console.log("uploadLevelOpen fail:res=>", res)}})}
如上代码,传入level的时候,cocos这边需要强制传个string类型的level。
参考文档:
微信小游戏:关系链数据使用指南
案例博客-微信小游戏关系链