Android activity 开启时数据保存和恢复

本文介绍了Android开发中Activity在不同生命周期状态下的数据保存与恢复方法。通过重写onSaveInstanceState()方法保存数据,并在onCreate()方法中从Bundle参数中恢复数据,确保在内存不足导致Activity被系统回收时不会丢失数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Activity的生存周期中,当创建secondActivity,使firstActivity不可见,若此时内存不够,则会关闭不可见的activity,为防止Activity意外关闭,造成数据丢失,可在Activity关闭之前,保存Activity上的数据。


保存方法,重写下面的方法:

@Override
protected void onSaveInstanceState(Bundle outState) {//保存实例状态,即是保存Activity的数据
super.onSaveInstanceState(outState);
String saveData = "the String you need to save";
outState.putString("String_key", saveData);
}


saveInstanceState,即是Activity启动时调用的onCreate(Bundle savedInstanceState)的参数。所以,恢复数据时,在onCreate()函数中实现。
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (savedInstanceState != null) {
String receiveData = savedInstanceState.getString("String_key");
}
}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值