egret websocket 两个浏览器调试 发现在后台运行的浏览器不能刷新 是egret设置问题

不需要的话将下面的注释掉

生命周期
在游戏中,用户可以切换应用的前后台。在用户进入后台时,关闭游戏逻辑、渲染逻辑、背景音乐,可以保证更好的用户体验。
白鹭引擎从 4.1 版本开始引入生命周期管理器:egret.lifecycle。其代码示例如下:

egret.lifecycle.onPause = ()=> {
console.log(“app 进入后台”);
egret.ticker.pause(); // 关闭渲染与心跳
}
egret.lifecycle.onResume = ()=> {
console.log(“app 进入前台”);
egret.ticker.resume(); // 打开渲染与心跳
}
针对不同的游戏运行环境,开发者可以对生命周期管理器进行扩展,以手机QQ举例,其扩展如下:

// 手机QQ注册了 appInBackgound 这一变量,在 TypeScript 中进行声明,防止报错
declare interface Window {
appInBackgound:boolean;
}
egret.lifecycle.addLifecycleListener( (context)=>{
// 方法一:通过事件监听的方式进行通知
document.addEventListener(“qbrowserVisibilityChange”, function(e:any){
if (e.hidden){
context.pause();
}
else{
context.resume();
};
});
// 方法二:在每一帧进行判断
context.onUpdate = ()=> {
if (window.appInBackgound){
context.pause();
}
else{
context.resume();
}
}
} )

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值