android – 什么时候才能使用savedInstanceState?

我是 Android的新手,我在使用savedInstanceState和管理生命周期时遇到了一些麻烦.

http://developer.android.com/guide/topics/fundamentals/activities.html#Lifecycle
我阅读了有关生命周期的文章,但我真的不知道该进程何时被杀死,并且我将使用我的niceInstanceSate!我可以按“HOME”,但它只会启动“onPause”然后“onResume”我认为.

如果我转到菜单 – >设置 – >应用程序 – >管理应用程序 – >我的应用程序名称 – >强制停止,它仍然被视为正在运行的应用程序,但当我重新启动它时,我会回到“第一次活动”.所以就像关闭应用程序一样,如果我理解的话,它不是我想要的“杀死过程”.

所以这是我的问题:

1)我如何确定我的进程被杀死(因此我的应用程序将在重新启动时使用savedIntanceState)?

2)如何强制进程被杀死,以测试我的savedInstanceState是否编程良好?

3)在被“杀死”之后,应用程序重新启动并调用“onCreate”(使用savedInstanceState!= null那个时间),我是否仍然可以访问我在调用Activity时给出的Intent Extra信息,或者当进程被杀死时,意图的信息被删除了吗?
换句话说,我必须在我的saveInstanceState中包含存储在Intent Extra中的内容的副本吗?

我希望我足够清楚;)

解决方法

1)您需要担心的是覆盖Activity的onSaveInstanceState(). Android会在杀死您的进程之前调用它.

2)你需要设置一个Android test project.然后,创建一个扩展ActivityInstrumentationTestCase2的测试,你可以通过调用`getInstrumentation()获得一个Instrumentation对象.从那里,您可以调用Instrumentation.callActivityOnCreate并传递Bundle对象以用于测试.

3)我很确定你会将附加内容存储在savedInstanceState包中.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...