始终调用onSaveInstanceState

the*_*itz 3 android savestate android-activity

我似乎对其他人都有相反的问题.:)

每当我从一个活动导航到下一个活动时,我的onSaveInstanceState就会被调用.我检查了LogCat,它肯定不会杀死活动.另外,我看到onRestoreInstanceState在返回时没有被调用,因此它必须仍然在内存中.

我认为只有在释放内存或方向改变时才会调用它.

Dav*_*ser 5

是,onSaveInstanceState()在活动暂停时调用.这是因为一旦活动暂停,Android可以随时终止进程(不调用任何其他生命周期方法).如果在进程被终止之前恢复活动,Android意识到它不需要调用,onRestoreInstanceState()因此它不会进行该调用(这是一个优化).