游戏优化系列三:Unity游戏的黑屏问题解决方法

本文分析了Unity游戏在Android平台上遇到的黑屏问题,特别是在用户打开登录弹框后点击Home键再返回时。解决方法是通过在UnityPlayerActivity中重写onStart()方法,主动获取焦点。文章详细探讨了生命周期方法和onWindowFocusChanged()的调用顺序,解释了焦点状态对游戏显示的影响,并提供了日志分析作为证据。
摘要由CSDN通过智能技术生成

作者

大家好,我叫Jack冯;
本人20年硕士毕业于广东工业大学,于2020年6月加入37手游安卓团队;目前主要负责海外游戏发行安卓相关开发。

系列目录

本文目录

一、背景
二、分析及解决
1、生命周期分析
(1)黑屏情况
(2)解决方法
(3)正常显示
2、涉及方法解析
(1)onWindowFocusChanged (boolean hasFocus)
(2)Android生命周期
(3)对比Android原生工程
(4)unity脚本生命周期
(5)分析脚本生命周期
三、结论

一、背景

在Unity游戏工程中,经常遇到这样的问题:打开登录弹框时,点击Home键先处理其他事宜再返回,发现屏幕黑屏;或者打开了其他接受输入焦点的对话框或弹出窗口,点击返回键时发生屏幕黑屏,需要触摸屏幕(获得焦点)才能正常显示。

具体情形见下图:

1、黑屏情况(UnityDemo):
img
2、 正常显示(UnityDemo):
img

二、分析及解决

1、生命周期分析
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值