Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Libgdx game crashes on Android

Tags:

I made a game using libgdx and it runs fine on both desktop and android before. I'm not sure if its because I started using box2d physics engine and liquidfun particles,what basically happens is that when I click play on my game it start loading then after loading it should go to the gameScreen, but it crashes then says "Unfortunately, myGame has stopped".

error message:

E/AndroidRuntime: FATAL EXCEPTION: GLThread 3764 Process: com.nivekbryan.puffypuff, PID: 8416 java.lang.NoClassDefFoundError: Failed resolution of: Lcom/badlogic/gdx/physics/box2d/World; 

I followed this setup tutorial on how to port liquidfun library, its from 2014 kinda old. The game runs Ok as desktop application.

This is my build.gradle file (dependencies), what could be the problem? and why is working as desktop application and not as an android application?

buildscript {     repositories {         mavenLocal()         mavenCentral()         maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }         jcenter()     }     dependencies {         classpath 'de.richsource.gradle.plugins:gwt-gradle-plugin:0.6'         classpath 'com.android.tools.build:gradle:2.0.0'         classpath 'com.mobidevelop.robovm:robovm-gradle-plugin:2.1.0'     } }  allprojects {     apply plugin: "eclipse"     apply plugin: "idea"      version = '1.0'     ext {         appName = "Puffy Puff"         gdxVersion = '1.9.3'         roboVMVersion = '2.1.0'         box2DLightsVersion = '1.4'         ashleyVersion = '1.7.0'         aiVersion = '1.8.0'         admobVersion = '8.3.0'     }      repositories {         mavenLocal()         mavenCentral()         maven { url "https://oss.sonatype.org/content/repositories/snapshots/" }         maven { url "https://oss.sonatype.org/content/repositories/releases/" }     } }  project(":desktop") {     apply plugin: "java"       dependencies {         compile project(":core")         compile "com.badlogicgames.gdx:gdx-backend-lwjgl:$gdxVersion"         compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-desktop"          compile "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-desktop"         compile fileTree(dir: 'libs', include: '*.jar')     } }  project(":android") {     apply plugin: "android"      configurations { natives }      dependencies {         compile project(":core")         compile "com.badlogicgames.gdx:gdx-backend-android:$gdxVersion"         natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi"         natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-armeabi-v7a"         natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-arm64-v8a"         natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86"         natives "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-x86_64"          compile "com.badlogicgames.gdx:gdx-freetype:$gdxVersion"         natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-armeabi"         natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-armeabi-v7a"         natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-arm64-v8a"         natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-x86"         natives "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-x86_64"         compile "com.google.android.gms:play-services-ads:8.3.0"         compile fileTree(dir: 'libs', include: '*.so')     } }  project(":ios") {     apply plugin: "java"     apply plugin: "robovm"       dependencies {         compile project(":core")         compile "com.mobidevelop.robovm:robovm-rt:$roboVMVersion"         compile "com.mobidevelop.robovm:robovm-cocoatouch:$roboVMVersion"         compile "com.badlogicgames.gdx:gdx-backend-robovm:$gdxVersion"         compile "com.badlogicgames.gdx:gdx-platform:$gdxVersion:natives-ios"          compile "com.badlogicgames.gdx:gdx-freetype-platform:$gdxVersion:natives-ios"     } }  project(":html") {     apply plugin: "gwt"     apply plugin: "war"       dependencies {         compile project(":core")         compile "com.badlogicgames.gdx:gdx-backend-gwt:$gdxVersion"         compile "com.badlogicgames.gdx:gdx:$gdxVersion:sources"         compile "com.badlogicgames.gdx:gdx-backend-gwt:$gdxVersion:sources"     } }  project(":core") {     apply plugin: "java"       dependencies {         compile "com.badlogicgames.gdx:gdx:$gdxVersion"          compile "com.badlogicgames.gdx:gdx-freetype:$gdxVersion"         compile fileTree(dir: 'libs', include: '*.jar')     } }  tasks.eclipse.doLast {     delete ".project" } 

UPDATE:

I found this solution link so what I did is I copied gdx-liquidfun.jar to Android -> libs then right click and add as library, but I still get the error. Help please, thanks in advance (I'm using Intellij Community Edition)

like image 276
Kevin Bryan Avatar asked Sep 29 '16 15:09

Kevin Bryan


People also ask

Does Libgdx use Java?

libGDX is a cross-platform Java game development framework based on OpenGL (ES) that works on Windows, Linux, macOS, Android, your browser and iOS.

What does Libgdx do?

It allows for the development of desktop and mobile games by using the same code base. It is cross-platform, supporting Windows, Linux, Mac OS X, Android, iOS, BlackBerry and web browsers with WebGL support.


1 Answers

Put this in the android dependencies:

    natives "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-armeabi"     natives "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-armeabi-v7a"     natives "com.badlogicgames.gdx:gdx-box2d-platform:$gdxVersion:natives-x86" 

and this in core dependencies:

    compile "com.badlogicgames.gdx:gdx-box2d:$gdxVersion" 
like image 169
M1LKYW4Y Avatar answered Sep 24 '22 02:09

M1LKYW4Y