吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3519|回复: 23
收起左侧

[Android 原创] Activity(活动)的生命周期

[复制链接]
宸道移动安全 发表于 2020-11-10 11:17
本帖最后由 宸道移动安全 于 2020-11-11 09:16 编辑

一:Activity(活动)概念


Activity(活动)代表了一个具有用户界面的单一屏幕,如 Java 的窗口或者帧。Android 的Activity(活动)是 ContextThemeWrapper 类的子类。如果你曾经用C/C++ 或者Java语言编程,你应该知道这些程序从 main() 函数开始,很类似的,Android 系统初始化它的程序是通过Activity(活动)中的 onCreate() 回调的调用开始的。存在有一序列的回调方法来启动一个活动,同时有一序列的方法来关闭活动,如下图所示的活动声明周期图:

图片1.png


二:Activity(活动)的生命周期


1.Activity 类定义了回调,可以不用实现所有的回调方法。但了解其中的每一个非常的重要,实现这些可以保证你的应用行为如用户所期望的样子,如下表所示。

微信图片_20201110111349.png

2.实例:这个实例通过简单地步骤展示 Android 应用程序Activity(活动)的生命周期。如表3.2所示,可以按照下面的步骤来修改在 Hello World 实例章节中创建的Android 应用程序。

微信图片_20201110111350.png

3.下面是主要活动文件src/com.example.helloworld/MainActivity.java修改的内容。里面包含每一个基本的生命周期方法。Log.d()方法用来生成日志信息:

微信图片_202011101113501.png
微信图片_202011101113502.png

活动类从项目的res/layout中的XML文件加载所有的UI组件。
下面的语句从res/layout/activity_main.xml文件中加载UI组件:
setContentView(R.layout.activity_main);
一个应用程序可以有1个或多个活动,而没有任何限制。每个为应用程序所定义的活动都需要在AndroidManifest.xml中声明。应用的主要活动需要在清单中声明,且意图过滤器标签中需要包含 MAIN 动作和LAUNCHER 类别,如下所示:

微信图片_202011101113503.png

不论是 MAIN 动作还是 LAUNCHER 类别没有在活动中声明,那么应用程序的图标将不会出现在主屏幕的应用列表中。

运行起刚刚修改的 "Hellow World!" 应用程序。假设你在环境搭建的时候已经创建了AVD。从 Eclipse 运行应用,打开一个项目中的活动文件,并从工具栏点击运行图标。Eclipse在AVD上安装应用并启动它。如果一切顺利,将显示模拟器屏幕如下,同时你可以在Eclipse IDE的LogCat窗口中看到日志信息。

07-19 15:00:43.405: D/Android :(866): The onCreate() event
07-19 15:00:43.405: D/Android :(866): The onStart() event
07-19 15:00:43.415: D/Android :(866): The onResume() event

点击 Android 模拟器上的红色按钮,它将在Eclipse IDE的LogCat窗口中产生如下所示的事件消息:

07-19 15:01:10.995: D/Android :(866): The onPause() event
07-19 15:01:12.705: D/Android :(866): The onStop() event

再次点击 Android 模拟器上的菜单按钮,它将在 Eclipse IDE 的LogCat 窗口中产生如下所示的事件消息:

07-19 15:01:13.995: D/Android :(866): The onStart() event
07-19 15:01:14.705: D/Android :(866): The onResume() event

最后点击Android模拟器上的返回按钮,它将在Eclipse  IDE的LogCat窗口中产生如下所示的事件消息,Android 应用程序上活动的整个生命周期完成。

07-19 15:33:15.687: D/Android :(992): The onPause() event
07-19 15:33:15.525: D/Android :(992): The onStop() event
07-19 15:33:15.525: D/Android :(992): The onDestroy() event

小结:
本次主要分享了Activity,了解什么是Activity,Activity(活动)的生命周期。






发帖只是单纯的为了分享,内容都是很基础的,吾爱里面有很多小白也有很多大佬,可能内容不是你想看见的,但也有人需要它,不喜勿碰。

点评

我觉得Fragment的生命周期你能再写2篇/手动滑稽  发表于 2020-11-10 16:40

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
夜莺高歌 + 1 + 1 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

神一样了 发表于 2020-11-10 14:12
不懂的看不懂 懂得嫌你抄的烂
芽衣 发表于 2020-11-10 16:52
benny856694 发表于 2020-11-10 12:43
海绵foryou 发表于 2020-11-10 15:34
这特么真的水
wofwhitefir 发表于 2020-11-10 16:44
这样水贴也可以的么,我这有很多这样的内容
zhnlwwdzz 发表于 2020-11-10 18:59
好像真的是很久以前就有的了
q5269174 发表于 2020-11-10 19:25
学习了楼主的分享 ,android也很强大呀
Joseph_TF 发表于 2020-11-10 20:03
额……这也太基础了吧
czxj2003 发表于 2020-11-10 21:37
故意传上来,让人喷的吧??
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-4-29 08:28

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表