Android生命周期

来源:互联网 发布:提高数据运用灵活度 编辑:程序博客网 时间:2024/06/06 07:28

app的生命周期

    
    

简介

    Android开发中,就是Activity与用户交互的过程。

    Android程序就存在生命周期,而且不是由本身决定的,用户的操作决定了App的生命周期。

    Android给Activity提供了很多的生命周期函数,如 :onCreate(),onStart(),onResume(),onPause(),onStop(),onDestroy()。

    


    

详细功能:

    他们的详细功能分别是:

    onCreate():在创建Activity最初的时候调用,用于Activity的初始化,在Activity生命周期中只会执行一次,适用于实例化对象。

    onStart():Activity在屏幕对用户可见时调用。(获得焦点)

    onResume():Activity开始与用户交互的时候调用,Activity这个时候在Activity栈的顶部。

    onPause():Activity被暂停的时候调用,被其他的Activity挡在了后面,该函数可以做一些清理工作。

    onStop():Activity被停止或者Activity不可见的时候调用。(失去焦点)

    onDestroy():Activity被从内存中移除,一般执行finish方法时或者Android回收内存的时候调用。

   

   

   

   

生命周期转化图示:



   

    

    

下面是我的App测试:

代码如下:

    protected void onCreate(Bundle savedInstanceState) {    Toast.makeText(getApplicationContext(), "onCreate()方法执行...", Toast.LENGTH_SHORT).show();        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);                if (savedInstanceState == null) {            getSupportFragmentManager().beginTransaction()                    .add(R.id.container, new PlaceholderFragment())                    .commit();        }    }    protected void onStart(){    super.onStart();    Toast.makeText(getApplicationContext(), "onStart()方法执行...", Toast.LENGTH_SHORT).show();    }    protected void onResume(){    super.onResume();    Toast.makeText(getApplicationContext(), "onResume()方法执行...", Toast.LENGTH_SHORT).show();    }    protected void onPause(){    super.onPause();    Toast.makeText(getApplicationContext(), "onPause()方法执行...", Toast.LENGTH_SHORT).show();    }    protected void onStop(){    super.onStop();    Toast.makeText(getApplicationContext(), "onStop()方法执行...", Toast.LENGTH_SHORT).show();    }    protected void onDestroy(){    super.onDestroy();    Toast.makeText(getApplicationContext(), "onDestroy()方法执行...", Toast.LENGTH_SHORT).show();    }


图示结果:

我在我的app重写了生命周期的方法,用广播测试:

进入了app主页面后,先后执行了onCreate(),onStart(),onResume(),

 








接下来页面跳转,执行了onPause(),onStop(),方法





按下返回键,返回第一个页面,app重新对用户可见,获得焦点,再次开始与用户交互:调用onStart(),onResume():





再次按下返回键退出app,执行onPause(),onStop(),onDestroy()方法:








2 0
原创粉丝点击