美文网首页
CocosCreator-【微信小游戏】子域排行榜卡顿优化,不能

CocosCreator-【微信小游戏】子域排行榜卡顿优化,不能

作者: 伏波Rinnsio1xy | 来源:发表于2019-01-05 16:09 被阅读473次

目前用的版本是2.x的2.0.6, 官方对微信小游戏的子域的使用方式和1.x有所变化。可以去看看官方文档。
那我们这个笔记解决什么问题呢,因为坑啊!卡啊!子域排行界面残留!滑动问题只要主域的微信显示节点下文的
subCanvas加入组件(cc.WXSubContextView)就可以滑动了,我这个问题是原因是用的早期的1.x的方式显示子域才有
这个问题。

一、解决子域显示

1.主域加入一个sprite节点,命名为subCanvas
2.给subCanvas加入cc.WXSubContextView组件
3.子域排行正常的方式去做就好
那么问题来了,在真机上跑,我的天,这帧率,无法接受啊。官方给出了这段说明:


image.png

我的处理方式:

  properties: {
        subCanvas: cc.Sprite,
  },

  this.subCanvas.getComponent(cc.WXSubContextView).enabled = false
  this.subCanvas.getComponent(cc.WXSubContextView).update()
当这样去做的时候,打开子域排行后,关闭排行会有残留界面。这里我能想到的原因:
当发送一个关闭的message到子域的时候,马上就调用了上面的2句代码,message 传递到子域应该是有延迟的,这就导致了子域名界面还没关闭
主域的调用已经生效,然而这个时候cc.WXSubContextView已经不生效了,不再刷新,导致了子域的界面残留

二、解决界面残留问题

解决办法:延迟调用上面的代码

/**
     * Sets the update wechat sub canvas.
     *
     * @param      {<type>}  bOn     { parameter_description }
     */
    setUpdateWechatSubCanvas: function(bOn) {
        var self = this
        cc.single.Utils.delayTime(this.node, 0.1, function() {
            if (self.subCanvas) {
                self.subCanvas.getComponent(cc.WXSubContextView).enabled = bOn
                self.subCanvas.getComponent(cc.WXSubContextView).update()
            }
            console.log("当前子域刷新状态:", bOn)
        })
    },

延迟调用的原因是让子域接收到关闭消息,已经把所有子域的界面关闭掉了,然后再禁止掉主域的微信显示组件即可,效果是可以接收的,略微有延迟。这样在性能和排行的显示做出很好的平衡

相关文章

  • CocosCreator-【微信小游戏】子域排行榜卡顿优化,不能

    目前用的版本是2.x的2.0.6, 官方对微信小游戏的子域的使用方式和1.x有所变化。可以去看看官方文档。那我们这...

  • Cocos Creator 微信小游戏开放数据域适配

    首先祭出官方文档微信小游戏开放数据域Creator 接入微信小游戏的开放数据域 备注:开放数据域简称为子域,常规游...

  • Laya FairyGui系列十一 发布微信小游戏

    FGUI发布微信小游戏的时候需要做一些修改,然后配合Laya2.0的开放域项目实现微信小游戏排行榜。 FGUI库文...

  • egret微信小游戏相关

    官方文档 微信小游戏快速上手egret微信小游戏开发指南菜鸟|Egret微信小游戏好友排行榜教程小程序与小游戏获取...

  • 微信开放数据域undefined

    如果微信小游戏没有获取用户权限的话,就要在init微信数据域之前,先给子域 send 一次自己的openid 这样...

  • CocosCreator-主域/子域

    知道 微信小游戏为了保护其社交关系链数据,增加了子域的概念,子域又叫 开放数据域,是一个单独的游戏执行环境。子域中...

  • 卡顿优化

    卡顿优化 - CPU 卡顿优化 - GPU 离屏渲染 卡顿检测 耗电优化

  • 21-性能优化

    一、CPU和GPU 二、卡顿产生的原因和优化 卡顿优化-CPU 卡顿优化-GPU 卡顿监测 监控卡顿的demo:推...

  • 微信跳一跳能过千的都是程序员

    大家应该都知道最新微信版本的更新,除了部分的微信bug优化,更重要的是新推出微信小游戏小程序,在这些小游戏中,最受...

  • iOS 性能优化

    iOS的性能优化主要可提现在以前的几个方面:卡顿优化、耗电优化、启动优化、安装包的瘦身。 1、卡顿优化 在了解卡顿...

网友评论

      本文标题:CocosCreator-【微信小游戏】子域排行榜卡顿优化,不能

      本文链接:https://www.haomeiwen.com/subject/sjzrrqtx.html