在游戏中间,它关闭但没有显示任何错误。 如何识别导致此行为的原因? 我删除了代码上的所有退出命令,但仍然关闭。
logcat的:
所有讯息:
05-20 09:21:16.785: I/ActivityManager(27603): Process com.xxxx.yyyy.android (pid 13684) has died.
在过程中(PID 13684): 没有错误。 没有警告。 没有消息,只是正常游戏System.out
如果我关闭游戏,LogCat上的消息是相同的。
另一个设备显示进程的logCat上的错误: 注意:文件编号/ 2.png正常,通常在游戏中使用。
05-21 08:00:54.398: E/libutils.threads(14116): androidCreateRawThreadEtc failed (entry=0x4017cf20, res=11, errno=0)
05-21 08:00:54.398: E/libutils.threads(14116): (android threadPriority=-16)
05-21 08:00:54.708: A/libc(14116): malloc size: 695556
05-21 08:00:55.218: E/AndroidRuntime(14116): FATAL EXCEPTION: GLThread 15797
05-21 08:00:55.218: E/AndroidRuntime(14116): Process: com.dsgames.combinations2048.android, PID: 14116
05-21 08:00:55.218: E/AndroidRuntime(14116): com.badlogic.gdx.utils.GdxRuntimeException: Couldn't load file: numbers/2.png
05-21 08:00:55.218: E/AndroidRuntime(14116): at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:148)
05-21 08:00:55.218: E/AndroidRuntime(14116): at com.badlogic.gdx.graphics.TextureData$Factory.loadFromFile(TextureData.java:98)
05-21 08:00:55.218: E/AndroidRuntime(14116): at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:100)
05-21 08:00:55.218: E/AndroidRuntime(14116): at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:92)
05-21 08:00:55.218: E/AndroidRuntime(14116): at com.badlogic.gdx.graphics.Texture.<init>(Texture.java:88)
05-21 08:00:55.218: E/AndroidRuntime(14116): at com.xxxx.yyyy.GameScreen.touchDown(GameScreen.java:2573)
05-21 08:00:55.218: E/AndroidRuntime(14116): at com.badlogic.gdx.InputMultiplexer.touchDown(InputMultiplexer.java:90)
05-21 08:00:55.218: E/AndroidRuntime(14116): at com.badlogic.gdx.backends.android.AndroidInput.processEvents(AndroidInput.java:375)
05-21 08:00:55.218: E/AndroidRuntime(14116): at com.badlogic.gdx.backends.android.AndroidGraphics.onDrawFrame(AndroidGraphics.java:470)
05-21 08:00:55.218: E/AndroidRuntime(14116): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1527)
05-21 08:00:55.218: E/AndroidRuntime(14116): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1244)
05-21 08:00:55.218: E/AndroidRuntime(14116): Caused by: java.io.IOException: Error loading pixmap: decoder init failed for stream
05-21 08:00:55.218: E/AndroidRuntime(14116): at com.badlogic.gdx.graphics.g2d.Gdx2DPixmap.<init>(Gdx2DPixmap.java:90)
05-21 08:00:55.218: E/AndroidRuntime(14116): at com.badlogic.gdx.graphics.Pixmap.<init>(Pixmap.java:146)
05-21 08:00:55.218: E/AndroidRuntime(14116): ... 10 more
05-21 08:00:59.698: E/AndroidGraphics(14116): waiting for pause synchronization took too long; assuming deadlock and killing
我发现了这个问题。每次点击屏幕,我都会创建一个新的纹理,而不会丢弃其他纹理。这是内存使用问题。 我认为A / libc(14116):malloc大小:695 556表示这一点。
剩下的问题是: 为什么在一台设备上没有产生错误,只关闭游戏?