我想获得一个libGDX Android游戏,我一直在努力将其移植到另一台笔记本电脑上。我现在使用1.5.3版本的libGDX。当我尝试从eclipse启动我的应用程序时,出现如下所示的错误:java.lang.UnsatisfiedLinkError:未找到本地方法:com.badlogic.gdx.backends.android.AndroidGL20.glGenTexture :()
02-11 21:21:35.519: E/Trace(7276): error opening trace file: No such file or directory (2)
02-11 21:21:36.019: E/dalvikvm(7276): Could not find class 'android.support.v4.app.FragmentActivity', referenced from method com.google.android.gms.common.GooglePlayServicesUtil.showErrorDialogFragment
02-11 21:21:36.019: E/dalvikvm(7276): Could not find class 'android.support.v4.app.FragmentActivity', referenced from method com.google.android.gms.common.GooglePlayServicesUtil.showErrorDialogFragment
02-11 21:21:36.820: E/AndroidRuntime(7276): FATAL EXCEPTION: GLThread 11304
02-11 21:21:36.820: E/AndroidRuntime(7276): java.lang.UnsatisfiedLinkError: Native method not found: com.badlogic.gdx.backends.android.AndroidGL20.glGenTexture:()I
02-11 21:21:36.820: E/AndroidRuntime(7276): at com.badlogic.gdx.backends.android.AndroidGL20.glGenTexture(Native Method)
02-11 21:21:36.820: E/AndroidRuntime(7276): at com.badlogic.gdx.graphics.GLTexture.createGLHandle(GLTexture.java:197)
02-11 21:21:36.820: E/AndroidRuntime(7276): at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:123)
02-11 21:21:36.820: E/AndroidRuntime(7276): at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:103)
02-11 21:21:36.820: E/AndroidRuntime(7276): at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:95)
02-11 21:21:36.820: E/AndroidRuntime(7276): at com.mypkg.mygame.screens.MainMenu.show(MainMenu.java:41)
02-11 21:21:36.820: E/AndroidRuntime(7276): at com.badlogic.gdx.Game.setScreen(Game.java:61)
02-11 21:21:36.820: E/AndroidRuntime(7276): at com.mypkg.mygame.mygame.create(mygame.java:20)
02-11 21:21:36.820: E/AndroidRuntime(7276): at com.badlogic.gdx.backends.android.AndroidGraphics.onSurfaceChanged(AndroidGraphics.java:241)
02-11 21:21:36.820: E/AndroidRuntime(7276): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1505)
02-11 21:21:36.820: E/AndroidRuntime(7276): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1240)
这是产生此错误的代码位。
public void show() {
FileHandle gdxfile = Gdx.files.internal("data/title.png");
Texture t = new Texture(gdxfile); // this is line where my app crashes
相同的代码工作正常,我的其他的笔记本电脑。 任何帮助表示赞赏。
它说'本地方法没有找到',所以你把libgdx的这么你的apk,它是否支持你的ABI? – Mine 2015-02-12 06:39:01
这是一个很好的问题,我如何判断我是否将libgdx的co放在了我的apk中?我不知道ABI是什么?你可以解释吗?谢谢! – 2015-02-12 06:45:04
我不知道libgdx,但是使用JNI的库应该为不同的CPU(Native CPU ABI)使用.so文件构建。 .so文件应打包到您应用的apk文件中,以便Android可以为您的应用加载库。 – Mine 2015-02-12 06:58:47