【Android】Android之Activity的生命周期

本篇博文最后修改时间:2017年01月06日,11:06。


一、简介

本文介绍Activity的生命周期,并且用LogCat记录下生命周期的过程。


二、实验平台

开发平台:Eclipse IDE for Java Developers(Version: Luna Service Release 2 (4.4.2))

安卓系统: Android 4.3

手机:红米1S


三、版权声明

博主:甜甜的大香瓜

声明:喝水不忘挖井人,转载请注明出处。

原文地址:http://blog.csdn.NET/feilusia

联系方式:897503845@qq.com

香瓜BLE之CC2541群:127442605

香瓜BLE之CC2640群:557278427

香瓜BLE之Android群:541462902

香瓜单片机之STM8/STM32群:164311667
甜甜的大香瓜的小店(淘宝店):https://shop217632629.taobao.com/?spm=2013.1.1000126.d21.hd2o8i

四、 实验前提
1、在进行本文步骤前,请先 阅读 以下博文:
暂无

2、在进行本文步骤前,请先 实现以下博文:
暂无


五、基础知识

1、什么是Activity的生命周期?

答:

每个 Activity 实例都有生命周期。

在 Activity 的生命周期内,进行“运行、暂停和停止”三种状态转换。

每次状态发生转换时,都有一个 Activity 方法将状态改变的消息通知activity。


注:不需要我们自己去调用 onCreate等生命周期方法,Android会适时去调用它们。我们只需要修改它们的处理事件即可。


2、什么是日志信息Log?

答:

Log类似单片机的串口工具,可以打印出调试信息。

本篇使用的方法是:public static int d(String tag, String msg)

其中,d代表debug,用来标识日志信息的级别。

tag参数标识日志信息的来源,一般会以类名为值的TAG常量传入。比如TAG=feilusiaActivity。

msg参数标识日志的具体内容。


六、实验步骤

1、代码修改

1)新增一个TAG常量


这个TAG一般是跟类名一样,这里我自定义为feilusia。


2)添加onCreate方法的日志输出代码



3)添加其他生命周期中的方法的日志输出代码

	@Override
	public void onStart(){
		super.onStart();
		Log.d(TAG, "onStart() called");
	}
	
	@Override
	public void onPause(){
		super.onPause();
		Log.d(TAG, "onPause() called");
	}
	
	@Override
	public void onResume(){
		super.onResume();
		Log.d(TAG, "onResume() called");
	}	
	
	@Override
	public void onStop(){
		super.onStop();
		Log.d(TAG, "onStop() called");
	}
	
	@Override
	public void onDestroy(){
		super.onDestroy();
		Log.d(TAG, "onDestroy() called");
	}
默认工程中没有以上的生命周期的方法代码,但是它们都是存在的。只是在这里添加log代码。

注:这里的@Override会要求编译器保证当前类具有准备覆盖的方法。也就是说如果onStart编译出错,编译器在这里会报错。


2、使用LogCat

1)打开LogCat

打开Window → Show View → Other...菜单,展开Android文件夹找到并选择LogCat,然后单击OK按钮。



2)添加过滤器


给这个过滤器起一个名字,然后将之前的TAG名字放到by Log Tag中。随后logcat中就只会有TAG为feilusia的信息了。


七、注意事项

暂无


八、实验结果

1)打开一个应用+按返回键

打开一个应用时:


看到log信息为下面的流程:



按返回键退出应用时:


看到log信息为下面的流程:



2)打开一个应用+按主屏幕键+重新打开这个应用


发现按“主屏幕”键比按“返回”键少了“onDestroy()”方法,说明这个应用并没有被销毁。

再长按主屏幕键选中刚才的应用



发现这里也只有两步,并不需要重新onCreate,因为之前并没有销毁。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值