Java Android游戏中的零星延迟

Java Android游戏中的零星延迟,java,android,lag,Java,Android,Lag,我正在用Java制作一个简单的Android游戏。我注意到每20-40秒就有一些恼人的延迟。起初我以为是垃圾收集器造成的,但当我查看日志时,我发现游戏延迟时没有垃圾收集。 每次游戏开始延迟时,我都会标记日志,并看到几乎每次都有此日志条目: W/qdhwcomposer(209):过度延迟读取vsync:耗时47毫秒 正如它所说,有一个延迟(通常>45毫秒),我想这就是我所注意到的滞后。 有人知道这个问题或者如何避免这些延误吗 以下是游戏延迟时LogCat的两个片段: 07-29 15:11:5

我正在用Java制作一个简单的Android游戏。我注意到每20-40秒就有一些恼人的延迟。起初我以为是垃圾收集器造成的,但当我查看日志时,我发现游戏延迟时没有垃圾收集。 每次游戏开始延迟时,我都会标记日志,并看到几乎每次都有此日志条目:

W/qdhwcomposer(209):过度延迟读取vsync:耗时47毫秒

正如它所说,有一个延迟(通常>45毫秒),我想这就是我所注意到的滞后。 有人知道这个问题或者如何避免这些延误吗



以下是游戏延迟时LogCat的两个片段:

07-29 15:11:50.196: D/BatteryService(692): update start
07-29 15:11:50.206: D/BatteryService(692): level:80, scale:100, status:2, health:2, present:true, voltage: 4121, temperature: 355, technology: Li-ion, AC powered:false, USB powered:true, Wireless powered:false, icon:17303554, invalid charger:0, online:4, charge type:1, current avg:460
07-29 15:11:50.206: D/BatteryService(692): Sending ACTION_BATTERY_CHANGED.
07-29 15:11:50.216: D/STATUSBAR-BatteryController(1082): onReceive() - ACTION_BATTERY_CHANGED
07-29 15:11:50.216: D/STATUSBAR-BatteryController(1082): onReceive() - BATTERY_STATUS_CHARGING:
07-29 15:11:50.226: D/HeadsetStateMachine(18054): Disconnected process message: 10
07-29 15:11:50.236: W/qdhwcomposer(209): Excessive delay reading vsync: took 47 ms
07-29 15:11:50.236: D/STATUSBAR-IconMerger(1082): checkOverflow(288), More:true, Req:true Child:5

07-29 15:12:00.176: W/qdhwcomposer(209): Excessive delay reading vsync: took 49 ms
07-29 15:12:00.226: D/BatteryService(692): update start
07-29 15:12:00.226: D/BatteryService(692): level:80, scale:100, status:2, health:2, present:true, voltage: 4065, temperature: 355, technology: Li-ion, AC powered:false, USB powered:true, Wireless powered:false, icon:17303554, invalid charger:0, online:4, charge type:1, current avg:460
07-29 15:12:00.226: D/BatteryService(692): Sending ACTION_BATTERY_CHANGED.
07-29 15:12:00.236: D/STATUSBAR-BatteryController(1082): onReceive() - ACTION_BATTERY_CHANGED
07-29 15:12:00.236: D/STATUSBAR-BatteryController(1082): onReceive() - BATTERY_STATUS_CHARGING:
07-29 15:12:00.236: D/HeadsetStateMachine(18054): Disconnected process message: 10


顺便说一句,我在三星Galaxy S4(GT-I9505)上用安卓4.3对它进行了测试

谢谢

Geru

尝试使用调试应用程序-

我创建了一个.trace文件并读取了它,但我不确定如何找到延迟的原因。战地营地也有这个问题,因为刷卡有时间限制,这真的很烦人。我也有S4,也许就是这个电话?!GERU,你找到修复方法了吗?据我记忆所及,这确实是一个“三星Galaxy S4特定的bug”,我的新手机(三星Galaxy A5)上实际上没有这个问题。但是他们没有相同的Android版本,所以我不能100%确定它是否与硬件相关。不幸的是,我的S4在去年被摧毁了,我无法再次测试它。