- Android有四种启动方式,分别是Standard,SingleTop,SingleTask以及SingleInstance下边是它们之间的区别:
Standard:每一次启动都会新建实例
SingleTop:若任务栈的栈顶有相同的实例就会直接使用这个实例,不会去新建该Activity的实例,若任务栈中没有Activity实例,则会新建该实例压入栈顶。
SingleTask:若整个任务栈中有相同的实例则会直接使用这个实例,并把实例以上的Activity销毁。
SingleInstance:整个应用、进程、线程公用一个实例。
- 下边是SingleTop和SingleTask适合使用的场景
SingleTop:适合打开查看推送的消息,比如说推送几条不同的新闻用相同的Activity去打开这些新闻,虽然不会新建实例,但是会执行onNewIntent(Intentintent).
SingleTask:适合作为应用程序的入口,打开该Activity会销毁在其上边所有的Activity.