Decided to experiment with JME’s Android deployment, after some initial headache i managed to set up a test project and install it on my phone, but it crashes on launching.
The error i get is the following:
[java]E/com.jme3.app.AndroidHarness(30466): SEVERE Exception thrown in Thread[GLThread 10,5,main]
E/com.jme3.app.AndroidHarness(30466): java.lang.NoClassDefFoundError: java.util.ArrayDeque
E/com.jme3.app.AndroidHarness(30466): at com.jme3.util.NativeObjectManager.<init>(NativeObjectManager.java:82)
E/com.jme3.app.AndroidHarness(30466): at com.jme3.renderer.android.OGLESShaderRenderer.<init>(OGLESShaderRenderer.java:78)
E/com.jme3.app.AndroidHarness(30466): at com.jme3.system.android.OGLESContext.initInThread(OGLESContext.java:226)
E/com.jme3.app.AndroidHarness(30466): at com.jme3.system.android.OGLESContext.onSurfaceCreated(OGLESContext.java:205)
E/com.jme3.app.AndroidHarness(30466): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1317)
E/com.jme3.app.AndroidHarness(30466): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1116)[/java]
This class is only available since Android version 2.3, but the JME documentation clearly states a minimal requirement of 2.2, whereas my device is running 2.2.2.
I poked around the app store and found this: https://play.google.com/store/apps/details?id=jme3test.android
I was able to run some of those tests, although it required toggling on the checkbox which iirc was an alternative rendering method. Even without it, it wouldn’t crash, I’d only get an empty black screen.
BTW I wanted to try an emulator to see if the issue lies within my phone (which is a shitty old ZTE Blade), but I’ve not had any luck trying to make the JME SDK notice that I have an emulated device running, nor does it offer to pick a device from the list of AVDs I have.
I’m not entirely new to developing for Android as I’ve used Eclipse for it previously and had success running emulators aswell.
Is there any way to get around the issue?