我正在开发一款游戏并使用WakeLock让屏幕在用户播放时不会进入睡眠状态。但是,当屏幕手动进入睡眠状态时,我遇到了一些奇怪的行为。
我目前的做法是将游戏信息存储在OnPause()中,并在调用OnCreate()时将其加载回来。如果我按下主页按钮并重新启动我的应用程序,这可以正常工作。然而,关闭屏幕似乎几次调用OnPause()......除了一些其他时髦的行为。任何人都可以解释为什么关闭屏幕与击回家不同?
根据Logcat,这是事件的顺序。
当屏幕关闭时 - 调用OnPause; OnCreate被调用; OnResume被调用;再次调用OnPause
当屏幕重新打开时 - OnResume被调用(在手机解锁之前)