Отображение рекламы над GLSurfaceView в Cocos2d-x на Android

После показа + закрытия рекламы от Mopub в Android-игре Cocos2d-x 3.0 logcat показывает следующие ошибки:

E/libEGL  (13772): call to OpenGL ES API with no current context (logged once per thread)

W/Adreno-ES20(13772): <core_glBufferSubData:1238>: GL_INVALID_VALUE
D/cocos2d-x debug info(13772): OpenGL error 0x0501 in snip/../cocos2d/cocos/2d/CCTextureAtlas.cpp drawNumberOfQuads 123

D/cocos2d-x debug info(13772): 
W/Adreno-ES20(13772): <core_glBufferSubData:1238>: GL_INVALID_VALUE
D/cocos2d-x debug info(13772): OpenGL error 0x0501 in snip/../cocos2d/cocos/2d/CCTextureAtlas.cpp drawNumberOfQuads 123

D/cocos2d-x debug info(13772): 
W/Adreno-ES20(13772): <core_glBufferSubData:1238>: GL_INVALID_VALUE
D/cocos2d-x debug info(13772): OpenGL error 0x0501 in snip/../cocos2d/cocos/2d/CCTextureAtlas.cpp drawNumberOfQuads 123

Как я могу отображать объявления в их собственном представлении, чтобы не потерять контекст?

Больше информации:

  • Некоторые ошибки рисования происходят с этими ошибками. В основном просто отсутствуют этикетки.
  • приложение не вылетает
  • добавление this.setPreserveEGLContextOnPause(true) к Cocos2dxGLSurfaceView initView, похоже, не помогает
  • Я попытался приостановить + остановить анимацию до показа рекламы, затем запустить анимацию и возобновить ее после закрытия рекламы. Это не помогло.
  • Я звоню moPubInterstitial.show() из потока пользовательского интерфейса
  • Я звоню moPubInterstitial.load() из потока пользовательского интерфейса
  • В какой-то момент я получил OpenGL error 0x0502 (вероятно, до того, как исправил вышеперечисленные исправления)

person SundayMonday    schedule 08.10.2014    source источник


Ответы (1)


Здесь найдена полезная информация: https://gamedev.stackexchange.com/questions/12629/workaround-to-losing-the-opengl-context-when-android-pauses

Однако «решение» заключалось в том, чтобы избежать использования NotificationCenter в вызовах JNI приостановки/возобновления с Java на С++. Не уверен, что это ошибка Cocos2d-x. Я использую cocos2d-x-3.0rc1 April.2 2014.

person SundayMonday    schedule 08.10.2014