cocos creator将子域打包到主域方法
侧边栏壁纸
  • 累计撰写 635 篇文章
  • 累计收到 0 条评论

cocos creator将子域打包到主域方法

加速器之家
2024-08-22 / 0 评论 / 3 阅读 / 正在检测是否收录...

微信小游戏为了保护其社交关系链数据,增加了 开放数据域 的概念,这是一个单独的游戏执行环境。开放数据域中的资源、引擎、程序,都和主游戏完全隔离,开发者只有在开放数据域中才能访问微信提供的 wx.getFriendCloudStorage()wx.getGroupCloudStorage()两个 API,用于实现一些例如排行榜的功能。

由于开放数据域是一个封闭、独立的 JavaScript 作用域,所以开发者需要创建两个项目:

主域项目工程(正常的游戏项目)

开放数据域项目工程(通过微信 API 获取用户数据来做排行榜等功能的项目)

一、实现主域和子域发送接收消息

主域代码:加入到onload(){}方法下

// game.js
let openDataContext = wx.getOpenDataContext()
   openDataContext.postMessage({
   text: 'hello',
   year: (new Date()).getFullYear()
 })

子域项目代码:

cc.Class({
    extends: cc.Component,
 
    properties: {
      
    },
 
 
    onLoad () {
        // src/myOpenDataContext/index.js
        wx.onMessage(data => {
          console.log(data)
          /* {
            text: 'hello',
            year: 2018
          } */
        })
    },
 
    start () {
 
    },
 
    // update (dt) {},
});

二、主域执行构建-发布:正常发布,默认,增加开放数据域代码目录

image.png

点击构建即可。

三、子域构建

image.png

这里上图发布路径选择的是主域下的发布路径,执行构建之后会生成wx-open-data-peoject文件夹。

四、运行主域项目到微信开发者工具

image.png

可以看到上面主域和子域实现了互通


0

评论

博主关闭了当前页面的评论