这个是一个 常驻节点, 用于游戏心跳,每隔1分钟发送一次信令,


大部分手机是没问题的, 部分iqoo机型,1+,红米node9,rog7等几款手机上
切换几次,或者多次场景,或者长时间游戏(几小时),
引起了手机发热,60度以上,游戏变得卡顿,甚至无法正常游戏!
虽然我现在把慢速定时器放到了 onLoad 里,解决了这个问题,但还是想知道原因!
或者正确的做法!
望大神们指点迷津!
这个是一个 常驻节点, 用于游戏心跳,每隔1分钟发送一次信令,


大部分手机是没问题的, 部分iqoo机型,1+,红米node9,rog7等几款手机上
切换几次,或者多次场景,或者长时间游戏(几小时),
引起了手机发热,60度以上,游戏变得卡顿,甚至无法正常游戏!
虽然我现在把慢速定时器放到了 onLoad 里,解决了这个问题,但还是想知道原因!
或者正确的做法!
望大神们指点迷津!
我猜你的这个节点在不停的触发onEnable吧
onEnable 每次切换场景时回触发 但定时器不也clear了嘛! 只是有些机型上表现不佳!
嗯我仔细看了下,应该是js的clearInterval未生效的老生常谈,具体你可以问下度娘
你有没有发现,你的那部分机器,都是便宜货 
onEnable和onDestroy执行没有一一对应?
onEnable 激活组件的时候调用
onDisable取消激活组件的时候调用
onDestroy销毁组件的时候调用
一 一对应关系,你应该在onDisable中去清理定时器,或者setInterval前先清理定时器。我最近也遇到这类问题,如果onEnable被多次调用,实际是应该执行了多个定时器,你清掉一个,另一个还是在一直执行。以上个人见解
建议系统功能写在系统模块,这样如果disable 再enable,会导致心跳时间不稳定
不写在ui代码里, 有道理呀!
今天发现, 即便不用定时器,这块代码都注释掉,
发热依然纯在,只是有几率 不太热,所以似乎问题还没解决!
平台是原生还是小游戏啊,发热不是逻辑代码问题的话,就看draw call
android原生平台, 今天已经解决了,
因为加了个 分享的sdk包, 此包需要 androidx
现在已经去掉了, 游戏正常了!
进来仔细看了代码 ,以为能发现什么一些关键内容,,结果最后居然不是这个东西导致的