2 lz7330 lz7330 于 2016.01.20 19:41 提问

如果后台的Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态?

求大神回答下,谢谢,百度上的答案太啰嗦了,看不懂,求大神能够解释通俗易懂的

2个回答

caozhy
caozhy   Ds   Rxr 2016.01.20 19:52

在onSaveInstanceState里面写你需要保存的代码逻辑

http://blog.csdn.net/yuzhiboyi/article/details/7677026

91program
91program   Ds   Rxr 2016.01.20 20:27

onSaveInstanceState()
当你的程序中某一个Activity A在运行时,主动或被动地运行另一个新的Activity B,这个时候A会执行onSaveInstanceState()。B完成以后又会来找A,这个时候就有两种情况:一是A被回收,二是A没有被回收,被回收的A就要重新调用onCreate()方法,不同于直接启动的是这回onCreate()里是带上了参数savedInstanceState;而没被收回的就直接执行onResume(),跳过onCreate()了。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
Android开发_如果后台的Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态?
Hello,我是杨焕州,你没听错,传说中的杨焕州就是我啦!——QQ:804212028 原文链接 主题:activity被系统回收,如何在此之前保存当前的状态-只需重写onSaveInstanceState()方法,在此方法中保存要保存的数据,该方法将会在activity被回收之前调用。通过重写onRestoreInstanceState()方法可以从中提取保存好的数据。 Hello,我是杨焕州
如果后台的Activity由于某种原因被系统回收了,如何在被系统回收之前保存当前状态?
当你的程序中某一个Activity A在运行时,主动或被动地运行另一个新的Activity B,这个时候A会执行onSaveInstanceState()来保存Activity的当前状态 。B完成以后又会来找A, 这个时候就有两种情况:一是A被回收,二是A没有被回收,被回收的A就要重新调用onCreate()方法,不同于直接启动的是这回onCreate()里是带上了参数savedInstance
如果后台的 Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态?
如果后台的 Activit由于某原因被系统回收了,如何在被系统回收之前保存当前状态? onSaveInstanceState() 当你的程序中某一个Activity A 在运行时,主动或被动地运行另一个新的 Activity B, 这个时候A 会执行 onSaveInstanceState()。B 完成以后又会来找A,这个时候就有两种情况: 一是A 被回收,二是 A没有被回收,被回收的 A就
Android—Activity在被系统回收之前保存当前状态
如果后台的Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态         当一个Activity被pause或者stop的时候,这个Activity的对象实际上还是保存在内存中,因此这个Activity中的信息(成员和状态信息)还可以重新获取到.  如果系统为了整理内存而销毁了整合各Activity对象时,系统没法简单的原封不动地恢复先前的Activit
保存Activity被系统回收前的状态
Activity被销毁的两中情况 Activity被销毁的情况大致可分为两种。 一是正常行为。如当用户按了手机的back键或者activity调用自己的finish()方法而被销毁。 另一种是非正常行为。如activity处于stop状态而且长期没有被使用,或者是前台的activitiy需要更多的资源因此系统必须关闭后台进程以回收内存。 Activity状态能保存的情况 当activit
史上最全的android面试题库.pdf
Android面试题 1. 请描述下Activity的生命周期。 2. 如果后台的Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态? 3. 如何将一个Activity设置成窗口的样式。(Edited by Sodino) 4. 如何退出Activity?如何安全退出已调用多个Activity的Application? 5. 请介绍下Android中常用的五种布局。 6. 请介绍下Android的数据存储方式。(Edited by Sodino)
后台的activity被系统自动回收的话,怎么在回到界面的时候恢复数据
Activity的状态通常情况下系统会自动保存的,只有当我们需要保存额外的数据时才需要使用到这样的功能。   通常情况:  调用onPause()和onStop()方法后的activity实例仍然存在于内存中, activity的所有信息和状态数据不会消失, 当activity重新回到前台之后, 所有的改变都会得到保留。   异常情况:   但是当系统内存不足时, 调用onP
你后台的Activity被系统回收怎么办?
重写onSaveInstanceState()方法,再次方法中保存需要保存的数据,该方法会在activity被GC回收之前调用。 在onRestoreInstanceState()方法中可以提取保存好的数据
如果后台的Activity由于某原因被系统回收了,如何在被系统回收之前保存当前状态?
当你的程序中某一个Activity A在运行时中,主动或被动地运行另一个新的Activity B。这个时候A会执行 public void onSaveInstanceState(Bundle outState){ super.onSaveInstanceState(outState); outState.putLong("id",1234567890); }       B完成以
Android之Activity(八):活动意外被回收,如何处理临时数据的保存问题?
解决方法如下所示:public class MyActivity extends Activity { //在创建活动时调用,恢复临时数据 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setC