我正在尝试使用Google API在Android模拟器API 25上启动默认Google地图活动,但我收到以下错误:
Initialized EGL, version 1.4
04-15 11:30:25.043 3888-3937/dk.pawliux.app.mapstest D/OpenGLRenderer: Swap behavior 1
04-15 11:30:25.096 3888-3933/dk.pawliux.app.mapstest E/EGL_emulation: rcCreateContext returned 0
04-15 11:30:25.097 3888-3933/dk.pawliux.app.mapstest E/EGL_emulation: tid 3933: eglCreateContext(1284): error 0x3003 (EGL_BAD_ALLOC)
04-15 11:30:25.097 3888-3933/dk.pawliux.app.mapstest E/AndroidRuntime: FATAL EXCEPTION: GLThread 194
Process: dk.pawliux.app.mapstest, PID: 3888
java.lang.RuntimeException: createContext failed: 12291
at com.google.maps.api.android.lib6.gmm6.vector.bi.a(:com.google.android.gms.DynamiteModulesB:834)
at com.google.maps.api.android.lib6.gmm6.vector.bj.f(:com.google.android.gms.DynamiteModulesB:20825)
at com.google.maps.api.android.lib6.gmm6.vector.bj.run(:com.google.android.gms.DynamiteModulesB:881)
正如我在合并清单上看到的那样,写着:
<uses-feature android:glEsVersion="0x00020000" android:required="true"/>
这是否意味着我正在尝试推出使用比我的模拟器/显卡支持更高的EGL的应用程序?我正在使用支持HAXM的Intel HD Graphics 3000。
尝试使用Google API在许多其他API上启动并保持不变。即使我的测试应用程序没有启动,但集成的Google Maps应用程序在模拟器上启动并正常工作。
有办法解决我的问题吗?
应用程序正在使用真实设备。
提前致谢。
答案 0 :(得分:5)
看起来我找到了解决自己问题的方法。我在这里发帖,以防其他人遇到同样的问题。
创建新仿真器时,可以在仿真性能中选择一些选项。它可能是Automatic
,Hardware GLES
或Software GLES
。在我的情况下,Software GLES 2.0
做了神奇的事。这些地图的工作速度稍慢但速度足以耐心试用我的应用程序。
这里是选择Emulation for Graphics
我认为我的显卡存在模拟器问题。
答案 1 :(得分:2)
解决此问题的另一种方法是转到模拟器本身的设置,然后更改OpenGL ES渲染选项,在我的情况下,更改桌面原生OpenGL修复了问题。
请查看以下屏幕截图: