libgdx создает исключение в приложении helloworld при запуске в эмуляторе - PullRequest
4 голосов
/ 04 февраля 2012

Я следовал руководству по http://www.youtube.com/watch?v=vLx_72qxK_0&feature=player_embedded и создал простое приложение с библиотекой libgdx, которое создает приложение с красным фоном.

Это прекрасно работает, когда я запускаю его как подставкуприложение для рабочего стола, но когда я запускаю версию -android, выдается исключение, указанное ниже, и приложение не запускается.

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.<clinit>(AndroidApplication.java:58)
02-04 18:25:27.676: E/AndroidRuntime(456):  ... 15 more

Кто-нибудь имеет опыт работы с этой библиотекой?

Ответы [ 3 ]

6 голосов
/ 04 февраля 2012

исправил проблему, убедившись, что папки armeabi и armeabi-v7a находятся в / libs проекта android.

2 голосов
/ 28 декабря 2012

Я обнаружил, что проблема была вызвана попыткой запустить на Android AVD с изображением intel atom x86. Я считаю, что вы должны использовать изображение ARM.

0 голосов
/ 29 января 2014

Источник: Как импортировать папки x86 для android (июль 2013 г.)

Разработчики сказали нам, что они дают отсутствующую папку x86 в последнюю ночь, чтобы вам не пришлось использовать эмулятор ARM.

Загрузите последнюю ночную версию ниже и скопируйте папку x86 в папку libs/ вашего проекта / библиотеки (где вы также найдете папки armeabi и armeabi-v7a)

Последний вечерний выпуск libgdx, содержащий папку x86 для вставки в libs /

Это решило проблему для меня.

...