2014-05-01 62 views
2

这是我第一次使用libgdx,我想尝试在设置gdx-setup-ui后提供的默认应用程序。它运行正常,当我打在日食运行按钮,它已表现出libgdx android启动失败

[2014-05-01 21:40:14 - my-gdx-game-android] Uploading my-gdx-game-android.apk onto device 'emulator-5554' 
[2014-05-01 21:40:15 - my-gdx-game-android] Installing my-gdx-game-android.apk... 
[2014-05-01 21:40:16 - my-gdx-game-android] Success! 
[2014-05-01 21:40:16 - my-gdx-game-android] Starting activity com.me.mygdxgame.MainActivity on device emulator-5554 
[2014-05-01 21:40:16 - my-gdx-game-android] ActivityManager: WARNING: linker: libdvm.so has text relocations. This is wasting memory and is a security risk. Please fix. 
[2014-05-01 21:40:16 - my-gdx-game-android] ActivityManager: Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.me.mygdxgame/.MainActivity } 

但在模拟器上它说不幸的是,我的LibGDX游戏已经停止。

这些都显示在logcat中:

05-01 17:02:04.936: D/dalvikvm(2034): Trying to load lib /data/app-lib/com.me.mygdxgame-1/libgdx.so 0xb103cb78 
05-01 17:02:04.936: D/dalvikvm(2034): Added shared lib /data/app-lib/com.me.mygdxgame-1/libgdx.so 0xb103cb78 
05-01 17:02:04.936: D/dalvikvm(2034): No JNI_OnLoad found in /data/app-lib/com.me.mygdxgame-1/libgdx.so 0xb103cb78, skipping init 
05-01 17:02:04.936: D/AndroidRuntime(2034): Shutting down VM 
05-01 17:02:04.936: W/dalvikvm(2034): threadid=1: thread exiting with uncaught exception (group=0xb0d34b20) 
05-01 17:02:04.996: E/AndroidRuntime(2034): FATAL EXCEPTION: main 
05-01 17:02:04.996: E/AndroidRuntime(2034): Process: com.me.mygdxgame, PID: 2034 
05-01 17:02:04.996: E/AndroidRuntime(2034): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.me.mygdxgame/com.me.mygdxgame.MainActivity}: com.badlogic.gdx.utils.GdxRuntimeException: Libgdx requires OpenGL ES 2.0 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2195) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at android.app.ActivityThread.access$800(ActivityThread.java:135) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at android.os.Handler.dispatchMessage(Handler.java:102) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at android.os.Looper.loop(Looper.java:136) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at android.app.ActivityThread.main(ActivityThread.java:5017) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at java.lang.reflect.Method.invokeNative(Native Method) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at java.lang.reflect.Method.invoke(Method.java:515) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at dalvik.system.NativeStart.main(Native Method) 
05-01 17:02:04.996: E/AndroidRuntime(2034): Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Libgdx requires OpenGL ES 2.0 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at com.badlogic.gdx.backends.android.AndroidGraphics.createGLSurfaceView(AndroidGraphics.java:121) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at com.badlogic.gdx.backends.android.AndroidGraphics.<init>(AndroidGraphics.java:101) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at com.badlogic.gdx.backends.android.AndroidGraphics.<init>(AndroidGraphics.java:94) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at com.badlogic.gdx.backends.android.AndroidApplication.init(AndroidApplication.java:130) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at com.badlogic.gdx.backends.android.AndroidApplication.initialize(AndroidApplication.java:96) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at com.me.mygdxgame.MainActivity.onCreate(MainActivity.java:15) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at android.app.Activity.performCreate(Activity.java:5231) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1087) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2159) 
05-01 17:02:04.996: E/AndroidRuntime(2034):  ... 11 more 

另外,我删除了行cfg.useGL20 = true;MainActivity.java,因为它不断给我的错误,我试图快速修复它,这是行不通的。我真的需要它在模拟器中使用,因为我没有在android设备上拥有它。

+1

我认为Android模拟器不支持OpenGL ES 2.0,并且LibGDX不支持自1.0版以来的 Phonbopit

+1

可能重复[LibGDX Hello-World Project不起作用](http://stackoverflow.com/questions/22703940/libgdx-hello-world-project-does-not-work) –

+0

哦,我的上帝,genymotion对我来说工作得很好!感谢您的回复:D – SourCreamOnion

回答

5

我能够使在MacBook Air上这项工作:

  1. 打开Android虚拟设备管理器(在Eclipse 例如,这是在Window菜单下)
  2. 点击编辑的设备你想在出现的对话框与
  3. 工作勾选“使用主机GPU”,如图

Click Use Host GPU

保存并重试。

我猜这取决于您的计算机的显卡支持OpenGL2.0,但我也怀疑这是现在很常见。