1

我只是和 superJumper 一起玩,然后我改变了一些东西。更新到 SDK 17 后,我遇到了一些问题。但我解决了它们。现在我可以运行我的 android 项目了。但是当我触摸我的任何设置(如开始游戏或设置或开/关声音)时,我得到错误。这是我的 LogCat。我不明白这个错误是为了什么。如果有人知道,请帮助我。谢谢。

04-18 19:26:36.884: D/dalvikvm(9455): GC_CONCURRENT freed 359K, 49% free 3008K/5895K, external                      90K/513K, paused 2ms+6ms
04-18 19:26:44.791: I/dalvikvm(9455): Total arena pages for JIT: 11
04-18 19:26:44.791: I/dalvikvm(9455): Total arena pages for JIT: 12
04-18 19:26:46.693: I/dalvikvm(9455): Total arena pages for JIT: 13
04-18 19:26:50.077: W/dalvikvm(9455): threadid=9: thread exiting with uncaught exception (group=0x401f6560)
04-18 19:26:50.087: E/AndroidRuntime(9455): FATAL EXCEPTION: GLThread 10
04-18 19:26:50.087: E/AndroidRuntime(9455): java.lang.NoSuchMethodError: com.badlogic.gdx.audio.Sound.play
04-18 19:26:50.087: E/AndroidRuntime(9455):     at com.Jumper.Assets.playSound(Assets.java:115)
04-18 19:26:50.087: E/AndroidRuntime(9455):     at com.Jumper.MainMenuScreen.update(MainMenuScreen.java:39)
04-18 19:26:50.087: E/AndroidRuntime(9455):     at com.Jumper.Game.render(Game.java:34)
04-18 19:26:50.087: E/AndroidRuntime(9455):     at com.badlogic.gdx.backends.android.AndroidGraphics.onDrawFrame(AndroidGraphics.java:423)
04-18 19:26:50.087: E/AndroidRuntime(9455):     at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1364)
04-18 19:26:50.087: E/AndroidRuntime(9455):     at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1119)
04-18 19:27:58.353: I/Process(9455): Sending signal. PID: 9455 SIG: 9

日志猫

4

1 回答 1

1

此错误java.lang.NoSuchMethodError: com.badlogic.gdx.audio.Sound.play意味着您正在尝试运行该方法,play()但它不是您使用的真正方法。在这种情况下,这是因为com.badlogic.gdx.audio.Sound它是一个接口,而不是一个完整的类。

该源文件中的注释说用于Audio.newSound(FileHandle)创建实际Sound对象。这可能意味着调用这样的东西:

FileHandle handle = new FileHandle("path/to/sound.mp3");
Sound mySound = Gdx.audio.newSound(handle);

我只是基于源代码,所以我可能会遗漏一些东西,但我认为应该这样做。本教程视频也可能有所帮助。

于 2012-04-18T18:46:43.747 回答