产生原因是Unity Activity在显示启动图片前会做其他处理,不是马上显示,所以会有黑屏延迟,在网上找了两种解决方法,亲测之后发现各有优缺点:

1.用另一个Activity作为启动

可以做到完全没有黑屏延迟,但是启动Activity结束开始Unity Activity还是会有黑屏,两个Activity不能并发,结果就是显示完启动图片会有段时间黑屏

根据activity的生命周期,只要一个activity被其他activity覆盖了就会暂停。

http://www.jianshu.com/p/b63b21e5e3e6

2.重写unity的Activity

开始还是会有段时间黑屏,比unity原生启动图片黑屏时间短,能和unity原生启动图片无缝衔接,没有方法1的缺点。

http://blog..net/h5q8n2e7/article/details/50484458

http://blog..net/a1047120490/article/details/53814239

-----2018/1/24 update-----

运用第二种方案可以做到不黑屏,完美启屏,用一个ImageView就可以了

http://blog..net/u012169685/article/details/52068809

bgView=new ImageView(this);

int splash_bg=getResources().getIdentifier("splash", "drawable", getPackageName());

bgView.setBackgroundResource(splash_bg);

mUnityPlayer.addView(bgView);

--wolf96 2017/11/22

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐