因此,Activity.onCreate()
将一个Bundle
作为参数,默认情况下它被称为savedInstanceState
。 savedInstanceState
是否在应用更新到较新版本时保留? (我们只是说通过 Google Play)。我能否将一些数据放入 savedInstanceState
,将应用更新到新版本,然后仍然访问数据?
最佳答案
已保存的实例数据在应用程序更新期间不会保留。这实际上是有道理的,不仅因为不同版本之间存在数据类型潜在的不兼容风险,而且因为您的新二进制文件可能只是全新的应用程序,仅共享 packageId
和签名证书。这就是为什么新版本需要重启 - 更新后用户将以全新的状态开始,因为这比尝试将应用恢复到更新开始前的状态(这可能根本不可能)要安全得多。
因此,如果您希望数据不受更新影响,数据库或共享首选项是更好的选择。
关于java - 更新期间是否保留了 savedInstanceState?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37123798/