Android中保存临时数据避免被回收(记录)

本文介绍如何在Android应用中,通过重写Activity的onSaveInstanceState()方法来保存临时数据,确保在活动被系统回收后,数据不会丢失。具体实现包括在onCreate()方法中恢复数据。

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

问题描述:当A活动进入停止状态时,很有可能会被系统回收。这时,如果按Back键返回,那么A活动重新创建,临时数据清空。如果保存临时数据?

解决方案:通过重写Activity的onSaveInstanceState()回调方法进行临时数据保存,然后在onCreate()回调方法中获取临时数据即可。

@Override
public void onSaveInstanceState(Bundle outState, PersistableBundle outPersistentState) {
    super.onSaveInstanceState(outState, outPersistentState);
    String tempData = "Something you just typed!";
    outState.putString("tempData", tempData);
}
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.activity_dialog);

    if (savedInstanceState != null) {
        String tempData = savedInstanceState.getString("tempData");
        Log.e("SavedData", tempData);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值