running / paused / stopped / killedandroid
activity启动 --->onCreate() -->onStart()--->onResume()服务器
点击Home键回到主界面(Activity不可见) -->onPause() --> onStop()app
再次回到原Activity时 -->onRestart() --> onStart() --> onResume()进程
推出当前Activity -->onPause() --> onStop() --> onDestroy()路由
前台 / 可见 / 服务 / 后台 / 空it
标准模式,也是默认模式。每当咱们启动一个Activity,系统就会相应的建立一个实例,无论这个实例是否已经存在。后台
栈顶复用模式,若是要启动的Activity处于栈的顶部,那么此时系统不会建立新的实例,而是直接打开此页面,同时它的onNewIntent()方法会被执行,能够经过Intent进行传值,并且它的onCreate(),onStart()方法不会被调用,由于它并无发生任何变化。sed
栈内复用模式,若是栈中存在这个Activity的实例就会复用这个Activity,无论它是否位于栈顶,复用时,会将它上面的Activity所有出栈,由于singleTask自己自带clearTop这种功能。而且会回调该实例的onNewIntent()方法。方法
单实例模式,该模式具有singleTask模式的全部特性外,与它的区别就是,这种模式下的Activity会单独占用一个Task栈,具备全局惟一性。以singleInstance模式启动的Activity在整个系统中是单例的,若是在启动这样的Activiyt时,已经存在了一个实例,那么会把它所在的任务调度到前台,重用这个实例。协议
android中的scheme 是一种页面内跳转协议,经过定义本身的scheme协议,方便跳转app内各个页面;经过scheme协议,服务器能够定制化告诉App跳转哪一个页面,能够经过通知栏消息定制化跳转页面,能够经过H5页面,
配合路由使用特别方便