libgdx在模拟器中运行时在helloworld应用程序上抛出exception
我已经按照http://www.youtube.com/watch?v=vLx_72qxK_0&feature=player_embedded上的教程进行了操作,并使用libgdx库创建了一个简单的应用程序,该应用程序具有红色背景。
当我作为一个独立的桌面应用程序运行它时,这工作正常,但是当我运行-android版本时,抛出下面的exception并且应用程序无法启动。
02-04 18:25:27.536: W/dalvikvm(456): Exception Ljava/lang/UnsatisfiedLinkError; thrown while initializing Lcom/badlogic/gdx/backends/android/AndroidApplication; 02-04 18:25:27.536: W/dalvikvm(456): Class init failed in newInstance call (Lorg/gravity/main/GameAndroidActivity;) 02-04 18:25:27.567: D/AndroidRuntime(456): Shutting down VM 02-04 18:25:27.567: W/dalvikvm(456): threadid=1: thread exiting with uncaught exception (group=0x40015560) 02-04 18:25:27.676: E/AndroidRuntime(456): FATAL EXCEPTION: main 02-04 18:25:27.676: E/AndroidRuntime(456): java.lang.ExceptionInInitializerError 02-04 18:25:27.676: E/AndroidRuntime(456): at java.lang.Class.newInstanceImpl(Native Method) 02-04 18:25:27.676: E/AndroidRuntime(456): at java.lang.Class.newInstance(Class.java:1409) 02-04 18:25:27.676: E/AndroidRuntime(456): at android.app.Instrumentation.newActivity(Instrumentation.java:1021) 02-04 18:25:27.676: E/AndroidRuntime(456): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1561) 02-04 18:25:27.676: E/AndroidRuntime(456): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663) 02-04 18:25:27.676: E/AndroidRuntime(456): at android.app.ActivityThread.access$1500(ActivityThread.java:117) 02-04 18:25:27.676: E/AndroidRuntime(456): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931) 02-04 18:25:27.676: E/AndroidRuntime(456): at android.os.Handler.dispatchMessage(Handler.java:99) 02-04 18:25:27.676: E/AndroidRuntime(456): at android.os.Looper.loop(Looper.java:123) 02-04 18:25:27.676: E/AndroidRuntime(456): at android.app.ActivityThread.main(ActivityThread.java:3683) 02-04 18:25:27.676: E/AndroidRuntime(456): at java.lang.reflect.Method.invokeNative(Native Method) 02-04 18:25:27.676: E/AndroidRuntime(456): at java.lang.reflect.Method.invoke(Method.java:507) 02-04 18:25:27.676: E/AndroidRuntime(456): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839) 02-04 18:25:27.676: E/AndroidRuntime(456): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597) 02-04 18:25:27.676: E/AndroidRuntime(456): at dalvik.system.NativeStart.main(Native Method) 02-04 18:25:27.676: E/AndroidRuntime(456): Caused by: java.lang.UnsatisfiedLinkError: Couldn't load gdx: findLibrary returned null 02-04 18:25:27.676: E/AndroidRuntime(456): at java.lang.Runtime.loadLibrary(Runtime.java:429) 02-04 18:25:27.676: E/AndroidRuntime(456): at java.lang.System.loadLibrary(System.java:554) 02-04 18:25:27.676: E/AndroidRuntime(456): at com.badlogic.gdx.utils.GdxNativesLoader.load(GdxNativesLoader.java:111) 02-04 18:25:27.676: E/AndroidRuntime(456): at com.badlogic.gdx.backends.android.AndroidApplication.(AndroidApplication.java:58) 02-04 18:25:27.676: E/AndroidRuntime(456): ... 15 more
有没有人对这个图书馆有任何经验?
通过确保armeabi和armeabi-v7a文件夹位于android项目的/ libs中来修复此问题。
我发现问题是由于尝试使用intel atom x86图像在Android AVD上运行引起的。 我相信你必须使用ARM镜像。
来源: 如何导入Android的x86文件夹 (2013年7月)
开发人员告诉我们,他们会在最新的夜间提供丢失的x86
文件夹,这样您就不会被迫使用ARM模拟器。
因此,请在下面下载最新的每晚,并将x86
文件夹复制到项目/库项目的libs/
文件夹中(您还可以在其中找到armeabi
和armeabi-v7a
文件夹)
libgdx的最新每晚包含放入libs /的x86文件夹
这解决了我的问题。
- 使用smack库在JAVA中实现GCM CCS(XMPP)。 gcm.googleapis.com连接失败
- Android:如果我将serialVersionUID添加到旧的可序列化对象会发生什么?
- Matmap的位图会返回错误的颜色
- ArrayAdapter.remove 的UnsupportedOperationException
- 使用Android的颜色填充ArrayList
- 在Android中裁剪并调整图像大小
- 如何使用海绵城堡为比特币曲线(secp256k1)创建ECDSA密钥对(256位)?
- 如果仅执行AsyncTask,则需要BroadcastReceiver唤醒锁吗?
- 如何将Android PopupMenu的背景设置为白色