码迷,mamicode.com
首页 > 移动开发 > 详细

Android——Activity以及Service的启动方式

时间:2017-09-02 15:34:26      阅读:298      评论:0      收藏:0      [点我收藏+]

标签:开启   mod   com   dac   新建   待完善   span   art   destory   

1. Activity共有四种启动方式(android:launchMode)

(1) standard:默认方式,不用再次配置

技术分享

standart模式就是一个栈的模式,默认每次跳转到一个新的Activity都会新建一个实例,不管这个实例是否存在。每次跳转就新建,压栈,每次返回就pop弹栈。

(2) singleTop:为<activity>指定属性android:launchMode="singleTop",栈顶重复使用模式。

技术分享

每次判断栈顶有没有,没有,创建;有,继续使用。如果发现有对应的Activity在栈顶,则会重复使用,不会创建新的。

(3) singleTask:为<activity>指定属性android:launchMode="singleTask",唯一模式。

如上图,如果从SecondActivity instance跳转到FirstActivity,则SecondActivity弹栈即可,不用新建

特点:每一个Activity的实例都是唯一的,只要栈中存在,就会将他上面的所有Activity弹出。保证了每个activity实例的唯一性

(4) singleInstance:一种比较独特的模式,每一个activity都会独占一个栈,这个栈只允许该activity的实例进栈

 

2. Service共有两种启动方式(待完善)

(1) Context.startService() 方式启动:onCreate()——onStartCommand(onStart() 过时)——onDestory()

一旦服务被开启,服务就跟调用者没有什么关系了。开启者无论推出还是挂了,服务器都会在后台继续进行。

 

(2) Context.bindService() 方式启动:onCreate()——onBind()——onunbind()——onDestory()

bind方式开启服务,服务绑定,调用者挂了,服务器也会跟着挂掉,绑定者可以调用服务里面的方法。

Android——Activity以及Service的启动方式

标签:开启   mod   com   dac   新建   待完善   span   art   destory   

原文地址:http://www.cnblogs.com/dong-liu/p/7466662.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!