我正在尝试在onPause()事件期间将密钥保存到SharedPreferences,但是当我离开活动时以及当我返回活动时,这会被称为BOTH。
因此,当我返回活动时,我的值会被零和默认值覆盖,并且oncreate方法中的方法不会像我期望的那样响应。
也许我误解了Android的生命周期,但我已经看过十几次生命周期图,而我的程序并没有像我期望的那样行事。
洞察力表示赞赏。
答案 0 :(得分:1)
根据我的经验,某些设备对活动的事件生命周期完全不了解。
我发现的唯一解决方案是使活动尽可能独立于生命周期。我看过设备,当他们从onPause返回时,只会创建一个新活动。你应该检查一下这不是你的情况。
设备的android测试似乎在这方面缺乏很多。
答案 1 :(得分:0)
根据活动生命周期,onPause()将在onResume()之后和onStop()之前调用。所以你在onPause()中做的任何事都会被执行两次。但是在我的实验中,有些设备在onStop()之前跳过onPause()一些次。所以你不要单独依靠暂停()。最好在适当的条件下在onCreate()或onResume()上编写代码。
请将您的代码放在此处以获得更多说明。