gpt4 book ai didi

Android GLSurfaceView 2.x SDK 保留上下文。屏幕关闭时销毁

转载 作者:行者123 更新时间:2023-11-30 03:48:10 28 4
gpt4 key购买 nike

我正在制作游戏。不久前我遇到了一个问题。我想为旧的 sdk 版本保留 GLSurfaceView 的 GLContext。我通过获取最新的 GlSurfaceView 源并将其放入我的项目中解决了这个问题。只需要很少的修复:gles 2.0 版本检查。

这几乎可以正常工作。但是!

在 android 版本 2.x.x 上,当应用程序的屏幕画面被破坏时,上下文和所有纹理也随之被破坏。有趣的事情:如果我按下主页按钮,应用程序将转到后台,屏幕的转动它不会被销毁,但如果我在前台运行时关闭屏幕,它肯定会被销毁。

我尝试了不同的方法来避免这种情况。

  1. 我已尝试按照副本岛开发人员的建议将上下文线程和表面线程分开。但没有什么好。它总是重新加载纹理。

  2. 我已尝试按照此处的建议在 onDestroy 中分离 View :Attach/detach Android view to/from layout但也没什么好东西。

  3. 我试过使用 FLAG_SHOW_WHEN_LOCKED。但是当屏幕打开时,锁屏不会出现。按下主页按钮时会显示。一点都不好。

  4. 我尝试在调用 on resume 时将应用程序发送到后台,然后使用 BroadcastReceiver 将其置于前台,但它始终置于前台(即使它在后台)。如果它被系统破坏,它根本不会显示。

不知道该怎么办。可能是我的手机资源不足,但我试过其他游戏,它们运行得非常好。无需长时间重新加载即可自行恢复。

最佳答案

我不敢相信。这太愚蠢了。根据这个线程 Problems understanding the life cycle when screen goes off and on你必须添加

<activity ... android:configChanges="orientation" ... >

因此当您关闭屏幕时,应用程序不会旋转然后销毁。

关于Android GLSurfaceView 2.x SDK 保留上下文。屏幕关闭时销毁,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14611872/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com