韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha 活动被系统回收, 要保存状态 ,用到 活动的 在保存实例时候 的 这个方法. 当系统异常回收掉这个活动的时候,会调用这个方法. 当再次启动这个活动的时候,系统会调用这个活动的在创建时候的这个方法,并把 数据包bundle 对象传过去. bundle就是 包,捆 的意思. 在一个活动 暂停,或者停止的时候, 这个 活动 实际还在内存中, 也就是它的成员,状态信息 在内存中. 所以恢复的时…
你后台的Activity被系统回收怎么办?如果后台的Activity由于某种原因被系统回收了,如何在被系统回收之前保存当前状态? 除了在栈顶的Activity,其他的Activity都有可能在内存不足的时候被系统回收,一个Activity越处于栈底,被回收的可能性就越大. protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); outState.putLong("id&q…
onSaveIntanceState,当程序中的某个Activity A在运行中,主动或者被动的运行另外一个新的Activity B,这个时候 A就会执行onSaveIntanceState(Bundle). B完成以后又会来找A,这个时候A就有2种情况,一种情况是A被回收,一种是没有被回收,被回收的A要重新调用onCreate()方法,但是又和直接启动不一样,这次onCreate是带上参数saveIntanceState,没有被回收的就还是调用onResume…
1.重写onSaveInstanceState方法 protected void onSaveInstanceState(Bundle outState) { super.onSaveInstanceState(outState); } 2.在onCreate方法中判断(Bundle savedInstanceState)对象是否为空 public void onCreate(Bundle savedInstanceState) { //判断 savedInstanceState是不是空. //…
之前写的第一篇Fragment实例,和大多数人一开始学的一样,都是通过FragmentTransaction的replace方法来实现,replace方法相当于先移除remove()原来所有已存在的fragments,然后添加add()当前这个fragment.这就导致了一个问题,我们切换一次,然后再切换回来,相当于重新加载了这个fragment,原来的状态不复存在,这显然与我们的日常使用不符.想要保存切换后的状态,思路还是很简单的,我们先添加了若干fragments,切换后将所有fragmen…
由于要做Android手机的电池续航测试,是不能插usb的,所以把case放到sh文件中,之后push到手机里,执行的. 但是出现个问题,假如case中有很长时间的sleep操作,关闭手机屏幕,这样linux就会进入睡眠状态,暂停代码的执行. 直到手动按power键点亮屏幕,这时继续从暂停状态执行.这严重影响自动化测试,所以以下是让手机即使黑屏也不进入睡眠模式的两种办法: 第一种是通过java代码实现的: //先定义一个mWakeLock PowerManager pm = (PowerMana…
返回栈 Android 中的 Activity 是可以层叠的,当我们启动一个新的 Activity 时,就会覆盖在原有的 Activity 之上, 点击 Back 会销毁当前 Activity,下面的(上一个 Activity)就会显示出来. Android 中使用任务(Task) 来管理 ACtivity,一个任务就是放在放在栈(Stack)中的一系列 Activity 的集合.这个栈就被称作 返回栈(Back Stack),栈是一种后进先出(Last In First Out)的数据结构,当…
 Activity作为四大组件之一,出现的频率相当高,基本上我们在android的各个地方都能看见它的踪影,因此深入了解Activity,对于开发高质量应用程序是很有帮助的.今天我们就来详细地聊聊Activity的生命周期,以便我们在以后的开发中能如鱼得水. 一.初识Activity   在日常应用中Activity是与用户交互的接口,它提供了一个用户完成相关操作的窗口.当我们在开发中创建Activity后,通过调用setContentView(View)方法来给该Activity指定一个布局界…
任务和返回栈 应用通常包含多个 Activity.每个 Activity 均应围绕用户可以执行的特定操作设计,并且能够启动其他 Activity. 例如,电子邮件应用可能有一个 Activity 显示新邮件的列表.用户选择某邮件时,会打开一个新 Activity 以查看该邮件. 一个 Activity 甚至可以启动设备上其他应用中存在的 Activity.例如,如果应用想要发送电子邮件,则可将 Intent 定义为执行“发送”操作并加入一些数据,如电子邮件地址和电子邮件. 然后,系统将打开其他应…
Android开发--Activity生命周期 Activity作为四大组件之首,也是使用最频繁的一种组件.本文将主要讲解Activity生命周期,包括正常情况下的Activity生命周期和异常情况下的Activity生命周期. 1. 正常情况下的Activity生命周期 所谓正常情况下的生命周期,是指有用户参与的情况下,Activity所经过的生命周期的改变.正常情况下,Activity会经历如下过程. 如图所示: (1)onCreate:表示Activity正在被创建,适合做一些初始化工作.…