Евгений Шатунов: Сработало! Дошли руки до этой ситуации и, как Вы и говорили, на холдер выставлялся хардкодом формат RGBA8888, который на первый раз совпадал, а после перезапуска не совпадал. Контекст пересоздается и все работает. Спасибо за наводку )
Евгений Шатунов: Огромное спасибо за наводку. Версия 4+ доступная. Контекст пропадает даже на самсунгах. По крайней мере, знаю теперь где искать ) Как справлюсь - напишу, в чем было дело.
Евгений, спасибо, что ответили. GlSurfaceView использую. setPreserveEGLContextOnPause ставлю, но даже в описании официальном говорится, что этот метод не гарантирует сохранение контекста. android:configChanges="keyboardHidden|orientation|screenSize", вроде без криминала. surface_view.getHolder().setFormat() делаем, но Вы меня натолкнули на мысль, что именно формат выставился неправильный. То, что контекст не на всех устройствах сохраняется - я так понял, зависит от производителя (поправьте меня, если есть какая-то хитрость, потому что на некоторых устройствах он сохраняется). Проверю, что происходит с форматом при возврате. И еще последнее - я проверял работу OpenGLES через GL trace в мониторе из инструментов SDK. При возврате в приложение на один кадр у меня выдано два новых контекста после удаления старого. То есть трейс идет со старым контекстом, потом идет новый контекст, буквально на несколько операций, а потом выдается последний - с которым я и продолжаю работу. Выглядит странно.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.