Android 动作的startActivity\u请求\u可发现会导致OpenGL渲染变黑,即使在删除后也是如此
我正在尝试将蓝牙支持添加到基于OpenGL的Android游戏中。 但是,当设置新的意图startActivity或startActivityForResult时,背景中的OpenGL渲染将变为黑色。 我从一个弹出窗口中启动意图,以便您可以在背景中看到OpenGL渲染,直到新意图生效为止 我设置的目的是BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION 当警报显示以供确认时,仅当我按下它时,它会变为黑色,而不是之前。 我用于创建新意图的代码是:Android 动作的startActivity\u请求\u可发现会导致OpenGL渲染变黑,即使在删除后也是如此,android,android-intent,opengl-es,bluetooth,Android,Android Intent,Opengl Es,Bluetooth,我正在尝试将蓝牙支持添加到基于OpenGL的Android游戏中。 但是,当设置新的意图startActivity或startActivityForResult时,背景中的OpenGL渲染将变为黑色。 我从一个弹出窗口中启动意图,以便您可以在背景中看到OpenGL渲染,直到新意图生效为止 我设置的目的是BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION 当警报显示以供确认时,仅当我按下它时,它会变为黑色,而不是之前。 我用于创建新意图的代码是: if
if (finalAdapter.getScanMode() !=
BluetoothAdapter.SCAN_MODE_CONNECTABLE_DISCOVERABLE) {
Intent discoverableIntent = new Intent(BluetoothAdapter.ACTION_REQUEST_DISCOVERABLE);
discoverableIntent.putExtra(BluetoothAdapter.EXTRA_DISCOVERABLE_DURATION, 300);
discoverableIntent.putExtra("Theme", "Transparent");
a.startActivityForResult(discoverableIntent, 42);
}
我尝试设置样式,使意图透明,并向OpenGL显示意图的背景可能是不透明的。
即使我接受黑色不透明的意图,在尝试使用finishActivity删除此意图后,我甚至无法恢复OpenGL渲染
删除意图的代码如下所示
cancelButton.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
a1.finishActivity(42);
self.dismiss();
}
});
游戏逻辑仍然有效,渲染更新函数仍在调用中。只是屏幕是黑色的。
也许我需要重新加载OpenGL资源?哪一个看起来很奇怪?
意图是否真的被消除了?为什么我会得到一个黑屏
谢谢。好的,显然当我调用startActivity时,Pause和onResume分别被调用作为主要活动。 我在onRestart和onStop的情况下处理OpenGL,但是当只调用onPause和onResume时,我不会正确地重新加载OpenGL。 这就是问题所在