android 启动模式应用场景

Standard

该模式为默认模式,适用于大多数应用场景。

SingleTop

  • 通知消息打开的页面;
  • 耗时操作返回页面;
  • 登录页面

SingleTask

浏览器、微博等页面

  • 大多数 App 的主页。对于大部分应用,当我们在主界面点击回退按钮的时候都是退出应用,那么当我们第一次进入主界面之后,主界面位于栈底,以后不管我们打开了多少个 Activity,只要我们再次回到主界面,都应该使用将主界面Activity 上所有的 Activity 移除的方式来让主界面 Activity 处于栈顶,而不是往栈顶新加一个主界面 Activity 的实例,通过这种方式能够保证退出应用时所有的 Activity 都能被销毁。

SingleInstance

单一实例模式,整个手机操作系统里面只有一个实例存在。不同的应用去打开这个 activity 共享同一个 activity。他会运行在自己单独,独立的任务栈里面,并且任务栈里面只有他一个实例存在。

应用场景:呼叫来电界面。

  1. 以singleInstance模式启动的Activity具有全局唯一性,即整个系统中只会存在一个这样的实例;
  2. 以singleInstance模式启动的Activity在整个系统中是单例的,如果在启动这样的Activiyt时,已经存在了一个实例,那么会把它所在的任务调度到前台,重用这个实例;
  3. 以singleInstance模式启动的Activity具有独占性,即它会独自占用一个任务,被他开启的任何activity都会运行在其他任务中;
  4. 被 singleInstance 模式的Activity开启的其他activity,能够在新的任务中启动,但不一定开启新的任务,也可能在已有的一个任务中开启。

你可能感兴趣的:(android 启动模式应用场景)