NoClassDefFoundError: FixedStepPhysicsWorld - PullRequest
1 голос
/ 29 марта 2012

Я разрабатываю простую игру с AndEngine, и я хотел разместить на экране несколько стен, чтобы персонаж, которого я двигаю, двигался и все такое.

Я обнаружил, что для этой простой задачи мне нужен объект FixedStepPhysicsWorld. Я скачал последнюю версию обоих AndEngine и AndEnginePhysics2DExtension с GitHub. Моя игра работает нормально, пока я не позвоню

this.mPhysicsWorld = new FixedStepPhysicsWorld(30, new Vector2(0, 0), false, 8, 1);

Я получаю следующую ошибку:

03-28 23:04:57.713: E/AndEngine(16548): PacManActivity.onCreateScene failed. @(Thread: 'GLThread 15')
03-28 23:04:57.713: E/AndEngine(16548): java.lang.NoClassDefFoundError: org.andengine.extension.physics.box2d.FixedStepPhysicsWorld
03-28 23:04:57.713: E/AndEngine(16548):     at com.rokuum.games.android.pacman.activity.PacManActivity.onCreateScene(PacManActivity.java:208)
03-28 23:04:57.713: E/AndEngine(16548):     at org.andengine.ui.activity.SimpleBaseGameActivity.onCreateScene(SimpleBaseGameActivity.java:48)
03-28 23:04:57.713: E/AndEngine(16548):     at org.andengine.ui.activity.BaseGameActivity$3.onCreateResourcesFinished(BaseGameActivity.java:167)
03-28 23:04:57.713: E/AndEngine(16548):     at org.andengine.ui.activity.SimpleBaseGameActivity.onCreateResources(SimpleBaseGameActivity.java:43)
03-28 23:04:57.713: E/AndEngine(16548):     at org.andengine.ui.activity.BaseGameActivity.onCreateGame(BaseGameActivity.java:179)
03-28 23:04:57.713: E/AndEngine(16548):     at org.andengine.ui.activity.BaseGameActivity.onSurfaceCreated(BaseGameActivity.java:108)
03-28 23:04:57.713: E/AndEngine(16548):     at org.andengine.opengl.view.EngineRenderer.onSurfaceCreated(EngineRenderer.java:59)
03-28 23:04:57.713: E/AndEngine(16548):     at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1349)
03-28 23:04:57.713: E/AndEngine(16548):     at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1119)

И AndEngine, и расширение добавляются в путь сборки (в виде файлов .jar), и игра собирается и компилируется без каких-либо ошибок. Также оба jar-файла, помеченные z, экспортированы на вкладке «Порядок и экспорт» окна «Путь сборки Java».

Я гуглюсь над этой проблемой вот уже как день, и я действительно теряюсь. ИМХО, это не имеет ничего общего с AndEngine, Android или чем-то еще, а скорее с неверной конфигурацией или чем-то подобным.

Любая подсказка или помощь будет принята с благодарностью!

Спасибо!

Ответы [ 2 ]

1 голос
/ 09 мая 2014

Я нашел ответ.Вы должны скопировать папки «armeabi» - «armeabi-v7a» - «x86» из папки «AndEnginePhysicsBox2DExtension» из папки «libs» в папку «libs» вашей игры.Это решит вашу проблему.

0 голосов
/ 29 марта 2012

Если minSdkVersion меньше уровня API, с которым вы компилируете, Android позволит вам скомпилировать без ошибок, но выдаст ошибку java.lang.NoClassDefFoundError, если вы попытаетесь запустить устройство, которое не поддерживает эту функцию в своемУровень API.Я получил эту ошибку раньше, когда я использовал вызов функции уровня 9 API (т.е. Android 2.3) на телефоне 2.2.Возможно, что AndEngine делает то же самое.

...