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

2021-02-17   阅读:1925   分类:前端    标签: 游戏

微信小游戏为了保护其社交关系链数据,增加了 开放数据域 的概念,这是一个单独的游戏执行环境。开放数据域中的资源、引擎、程序,都和主游戏完全隔离,开发者只有在开放数据域中才能访问微信提供的 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

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


【腾讯云】 爆款2核2G3M云服务器首年 61元,2核2G4M云服务器新老同享 99元/年,续费同价

‘简忆博客’微信公众号 扫码关注‘简忆博客’微信公众号,获取最新文章动态
转载:请说明文章出处“来源简忆博客”。http://www.tpxhm.com/fdetail/614.html

×
觉得文章有用就打赏一下文章作者
微信扫一扫打赏 微信扫一扫打赏
支付宝扫一扫打赏 支付宝扫一扫打赏

文章评论(0)

登录
简忆博客壁纸一
简忆博客壁纸二
简忆博客壁纸三
简忆博客壁纸四
简忆博客壁纸五
简忆博客壁纸六
简忆博客壁纸七
简忆博客壁纸八
头像

简忆博客
勤于学习,乐于分享

置顶推荐

打赏本站

如果你觉得本站很棒,可以通过扫码支付打赏哦!
微信扫码:你说多少就多少~
微信扫码
支付宝扫码:你说多少就多少~
支付宝扫码
×