对于在线游戏,很高兴知道 AndroidActivity
的 onDestroy() 是否仅因为 Android 将重新创建它(例如设备旋转)或用户选择退出游戏而被调用。
我的计划是在 Android 可能正在重新创建时在Activity
's中设置一个标志:onSaveInstanceState()
Activity
private boolean mDestroyedForReCreation;
...
protected void onSaveInstanceState() {
...
mDestroyedForReCreation = true;
}
如果你这样做了,你可以签mDestroyedForReCreation
入onDestroy()
:
- 如果设置了标志 (true),请不要将用户从在线游戏中解散。
- 如果该标志未设置(假),则将用户从在线游戏中移除,因为他确实自愿退出了游戏。
这是一个正确的方法吗?如果是,是否推荐或有更好的解决方案?我希望如此,因为我真的不喜欢那个解决方案......