3

我正在尝试在 Android Emulator 中运行ArcGIS for Android示例。根据ArcGIS 的建议,我安装了Intel HAXM并启用了GPU 仿真

我的一台机器有 3GB RAM,在模拟器中运行 .apk 没有问题。但是另一台具有 2GB RAM 的机器在运行应用程序时报告以下控制台输出。似乎应用程序已经安装了 ERRORS,我可以看到没有 MAP的应用程序布局并且它没有响应我。

请建议我,是否与硬件不足有关,或者我是否缺少任何软件配置来使其正常工作?

提前致谢!

[2012-08-17 12:07:07 - GeometryEditor] New emulator found: emulator-5554
[2012-08-17 12:07:07 - GeometryEditor] Waiting for HOME ('android.process.acore') to be launched...
[2012-08-17 12:08:32 - GeometryEditor] HOME is up on device 'emulator-5554'
[2012-08-17 12:08:32 - GeometryEditor] Uploading GeometryEditor.apk onto device 'emulator-5554'
[2012-08-17 12:09:20 - GeometryEditor] Installing GeometryEditor.apk...
[2012-08-17 12:09:42 - Emulator] sdk/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp:glUseProgram:1911 error 0x501
[2012-08-17 12:09:42 - Emulator] sdk/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp:glGetUniformLocation:1380 error 0x501
[2012-08-17 12:09:42 - Emulator] sdk/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp:glGetAttribLocation:825 error 0x501
[2012-08-17 12:09:42 - Emulator] sdk/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp:glUseProgram:1911 error 0x501
[2012-08-17 12:09:42 - Emulator] sdk/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp:glGetUniformLocation:1380 error 0x501
[2012-08-17 12:09:42 - Emulator] sdk/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp:glGetAttribLocation:825 error 0x501
[2012-08-17 12:09:42 - Emulator] sdk/emulator/opengl/host/libs/Translator/GLES_V2/GLESv2Imp.cpp:glGetUniformLocation:1380 error 0x501
.............
.............
.............
[2012-08-17 12:10:27 - GeometryEditor] Success!
[2012-08-17 12:10:27 - GeometryEditor] Starting activity com.esri.arcgis.android.samples.geometryeditor.GeometryEditor on device emulator-5554
[2012-08-17 12:10:30 - GeometryEditor] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.esri.arcgis.android.samples.geometryeditor/.GeometryEditor }
4

1 回答 1

2

您收到 OpenGL 错误 501 (GL_INVALID_VALUE),其中每个函数看起来都与您的着色器相关。

我猜想程序中包含的着色器没有编译,并且在编译和链接着色器时没有错误检查/验证,所以它正在处理一个损坏的程序。不同的 GPU 对它们将接受的着色器源有些挑剔,因此在一台计算机上运行的程序会停止在另一台计算机上运行似乎一点也不奇怪。

你有这个项目的源代码,你可以编辑吗?如果您从着色器打印调试消息,它可能很容易修复。

于 2012-08-17T08:13:55.737 回答