关于EVENT_SHOW, EVENT_HIDE事件在creator1.8.1版本中的问题

在cocos creator的1.8.1版本的changelog里说已经修复了EVENT_SHOW, EVENT_HIDE事件在小游戏里接收不到的问题,但是刚才测试的时候发现并没有起效。在源码里我发现了这两行代码。

        wx.onShow = onShow;
        wx.onHide = onHidden;

但是在微信小游戏的官方文档里,是这么调用的。

wx.onShow(function () {
     bgm.play()
})

所以是不是该这么写?

wx.onShow(onShow);
wx.onHide(onHidden);
1赞

测试了一下。。。

wx.onShow(onShow);
wx.onHide(onHidden);

这么写是可以调到的

2赞

我也遇到了同样的问题,确实通过修改源码部分的

wx.onShow = onShow;
wx.onHide = onHidden;

wx.onShow(onShow);
wx.onHide(onHidden);

事件就可以触发,

但是很奇怪,这样修改完成之后,在 cocos 模拟器上可以正确的暂停音乐,但是在微信的开发者工具中 cc.audioEngine.pasueAll() 没有把背景音乐暂停,有没有官方人员来看一下?这个1.8.1 所谓的修护事件触发是不是没有处理好,还是我写的代码方式不对?

同样遇到一样的问题,应该是cocos转出来的工程代码有问题。

谢谢各位反馈,近期已经修改了相关实现 https://github.com/cocos-creator/engine/pull/2305