Android是开源操作系统,可用于许多任务。当我们启动或者打开android应用程序时,它会经历各种状态,这称为Android Activity生命周期。
Android是基于Linux的开源操作系统,带有Java编程接口,可用于智能手机(支持Android OS的触摸屏设备)等移动设备。
它包含多个API,以支持基于位置的服务(例如GPS)。它还广泛支持多媒体硬件控制,以使用相机和麦克风执行播放或者录制。它支持多任务处理,我们可以从一个任务窗口移动到另一个任务窗口,并且多个应用程序可以同时运行。这将为重用应用程序组件和替换本机应用程序提供机会。
有了这个,让我们进一步了解一下Android活动的生命周期。
当用户浏览应用程序时,应用程序中的Activity实例会在其生命周期的不同阶段过渡。Activity类提供了许多回调,这些回调使活动可以知道状态已更改:系统正在创建,停止或者恢复活动,或者销毁该活动所在的进程。
现在,借助生命周期方法和回调,更详细地了解Android Activity生命周期。
通常,活动生命周期具有七个回调方法:
onCreate()
onStart()
onResume()
onPause()
onStop()
onRestart()
onDestroy()
现在,让我们详细了解Android Activity生命周期方法和回调。查看下图以了解生命周期。
我们必须意识到,程序是使用不同的编程语言从main()函数开始的。同样,android通过调用onCreate()回调方法在活动中启动程序。有一系列回调方法可启动一个活动,然后按上面的活动生命周期图中所示的不同方法进行分解:
2. onStart():当活动对用户可见时,将调用此回调方法。
2. onStart():
onResume():活动位于前台,用户可以与其进行交互。
onPause():活动被另一活动部分遮盖。前景中的另一项活动是半透明的。
onStop():活动被完全隐藏并且对用户不可见。
onRestart():活动从"已停止"状态返回或者与用户进行交互,或者活动结束运行并消失。如果活动返回,则系统调用 onRestart()7. onDestroy():活动被销毁并从内存中删除。
因此,这些是"活动生命周期"的各种方法。现在,让我们看看生命周期方法和状态将要发生的情况。
onCreate()–> onStart()–> onResume()
"当我们按下后退按钮并退出应用程序时" onPaused()—> onStop()–> onDestory()
`当按下主页按钮时onPaused()–> onStop()
在按下主页按钮后,再次从最近的任务列表中打开应用程序时,onRestart()–> onStart()–> onResume()
从对话框中取消对话框或者后退按钮后onResume()
"如果电话正在响铃,并且用户正在使用该应用" onPause()–> onResume()
通话结束后onResume()
"当手机屏幕关闭时" onPaused()–> onStop()
"当手机屏幕重新打开时" onRestart()–> onStart()–> onResume()
因此,在某些情况下,应用会经历各种状态。现在,让我们看看如何借助下面的示例来实现这一点。
步骤1:首先,我们需要使用Java或者Kotlin编程语言构建一个简单的Android应用。在此演示中,我使用的是Kotlin编程语言,因为与Java相比,Kotlin的代码行数更少。如果我们想知道如何使用Java创建Android应用,请参考Android教程。另外,如果我们想使用Kotlin创建Android应用程序,请查看Kotlin Android教程上的本文。
步骤2:构建应用程序后,我们需要配置MainActivity.kt类文件并覆盖回调方法。让我们看下面的代码以更广泛地理解这一点。
package com.example.activitycycle
import
androidx.appcompat.app.AppCompatActivity
android.os.Bundle
android.util.Log
android.widget.Toast
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
print(
"***App state: OnCreate***n"
)
Toast.makeText(getApplicationContext(),
"App state: OnCreate"
,Toast.LENGTH_LONG).show();
}
override fun onStart() {
super.onStart()
"***App state: OnStart***n"
"App state: OnStart"
override fun onResume() {
super.onResume()
"***App state: OnResume***n"
"App state: OnResume"
override fun onStop() {
super.onStop()
"***App state: OnStop***n"
"App state: OnStop"
override fun onPause() {
super.onPause()
"***App state: OnPause***n"
"App state: OnPause"
override fun onRestart() {
super.onRestart()
"***App state: OnReStart***n"
"App state: OnRestart"
override fun onDestroy() {
super.onDestroy()
"***App state: OnDestroy***n"
"App state: OnDestroy"
基本上,在上面的示例中,我将覆盖所有方法并打印状态。另外,我用过 Toast.makeText(),以在应用程序本身中显示生命周期方法。每当应用程序经历各种状态时,它都会在应用程序本身中调用并显示方法。这就是Android活动生命周期的工作方式。
Toast.makeText()
原文链接:https://codingdict.com/