android - 游戏在不同时间强制关闭。需要帮助解释 logCat 警告和错误

标签 android logcat

我的游戏以启动画面开始并播放音乐,直到有人触摸屏幕或给定的时间到期。然后它转到有两个按钮的菜单 Activity ,一个用于开始游戏,另一个用于打开一个关于 Activity ,弹出一个透明窗口告诉用户有关游戏的信息。

我目前的问题是,有时当我开始游戏时,我会立即强制关闭,或者当我触摸屏幕以跳过飞溅时,当我按下开始玩游戏时,甚至在这种错误的特定情况下我按下了关于按钮。对我来说奇怪的是有时一切正常。

即使它有效,我也遇到了很多这样的错误,我只需要一些帮助来解释它们,这样我就可以修复它们。我不确定我是从什么时候开始关闭这些力的,因为它之前一直在工作。虽然我总是有错误,但我不想要不稳定的东西。

如果您需要其他信息来提供帮助,您知道我在哪里。 :D

谢谢,我迫不及待地想让这个应用程序回到正轨,这样我就可以处理功能了!!

以下错误是运行我的游戏并在主菜单中按下并强制关闭的结果。

 09-11 20:54:53.984: WARN/AudioFlinger(34): write blocked for 82 msecs, 23 delayed writes, thread 0xb3f0
    09-11 20:54:55.314: WARN/TimedEventQueue(34): Event 15 was not found in the queue, already cancelled?
    09-11 20:54:55.314: ERROR/MediaPlayer(302): stop called in state 1
    09-11 20:54:55.314: ERROR/MediaPlayer(302): error (-38, 0)
    09-11 20:54:55.354: ERROR/global(302): Deprecated Thread methods are not supported.
    09-11 20:54:55.354: ERROR/global(302): java.lang.UnsupportedOperationException
    09-11 20:54:55.354: ERROR/global(302):     at java.lang.VMThread.stop(VMThread.java:85)
    09-11 20:54:55.354: ERROR/global(302):     at java.lang.Thread.stop(Thread.java:1379)
    09-11 20:54:55.354: ERROR/global(302):     at java.lang.Thread.stop(Thread.java:1344)
    09-11 20:54:55.354: ERROR/global(302):     at com.ss.game.Splash$1.run(Splash.java:61)
    09-11 20:55:22.915: WARN/TimedEventQueue(34): Event 2 was not found in the queue, already cancelled?
    09-11 20:55:22.925: WARN/dalvikvm(302): threadid=1: thread exiting with uncaught exception (group=0x4001d800)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302): FATAL EXCEPTION: main
    09-11 20:55:22.945: ERROR/AndroidRuntime(302): java.lang.RuntimeException: Unable to pause activity {com.ss.game/com.ss.game.MyMenu}: java.lang.NullPointerException
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3348)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3305)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:3288)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at android.app.ActivityThread.access$2500(ActivityThread.java:125)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2040)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at android.os.Handler.dispatchMessage(Handler.java:99)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at android.os.Looper.loop(Looper.java:123)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at android.app.ActivityThread.main(ActivityThread.java:4627)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at java.lang.reflect.Method.invokeNative(Native Method)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at java.lang.reflect.Method.invoke(Method.java:521)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at dalvik.system.NativeStart.main(Native Method)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302): Caused by: java.lang.NullPointerException
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at com.ss.lastzombie.MyMenu.onPause(MyMenu.java:78)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at android.app.Activity.performPause(Activity.java:3842)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1190)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     at android.app.ActivityThread.performPauseActivity(ActivityThread.java:3335)
    09-11 20:55:22.945: ERROR/AndroidRuntime(302):     ... 12 more
    09-11 20:55:23.477: WARN/ActivityManager(59): Activity pause timeout for HistoryRecord{43fea4f8 com.ss.game/.MyMenu}
    09-11 20:55:32.984: WARN/ActivityManager(59): Launch timeout has expired, giving up wake lock!
    09-11 20:55:33.454: WARN/InputManagerService(59): Got RemoteException sending setActive(false) notification to pid 302 uid 10032

最佳答案

从这里开始:

ERROR/MediaPlayer(302): stop called in state 1

MediaPlayer 希望它的方法以特定的顺序被调用。见状态图:http://developer.android.com/reference/android/media/MediaPlayer.html

您似乎是在 idle (1) 状态下调用它:http://androidxref.com/2.2.3/xref/frameworks/base/include/media/mediaplayer.h#111

关于android - 游戏在不同时间强制关闭。需要帮助解释 logCat 警告和错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7381262/

相关文章:

Android:致命异常问题:尝试在单击按钮时调用方法

java - Android 的替代 XML 解析器实现

java - 当 .xml 文件有多个副本时,LayoutInflater 如何处理 ID?

java - 六边形 ImageView 圆角

java - 金鱼地址空间主机内存分配器 : ioctl_ping failed

Android 崩溃执行 C++ 代码无法使用 adb shell 复制

android - 如何限制Android模拟器上的互联网连接速度?

Android图像全屏查看器

java - 我应该如何登录 Android 中的 UI?

android - 达到预取器最大缓存大小