WEB开发网
开发学院手机开发Android 开发 Android Activity和Intent机制 阅读

Android Activity和Intent机制

 2010-08-14 00:33:00 来源:WEB开发网   
核心提示:onBind(),onBind将返回给客户端一个IBind接口实例,Android Activity和Intent机制(9),IBind允许客户端回调服务的方法,比如得到Service运行的状态或其他操作,2 通过bindServiceService只会运行onCreate, 这个时候 TestServiceHolde
onBind(),onBind将返回给客户端一个IBind接口实例,IBind允许客户端回调服务的方法,比如得到Service运行的状态或其他操作。这个时候把调用者(Context,例如Activity)会和Service绑定在一起,Context退出了,Srevice就会调用 onUnbind -> onDestroyed相应退出,所谓绑定在一起就共存亡了 。

补充说明:传递给bindService()的Intent对象会传递给onBind(),传递给unbindService()的Intent对象会传递给onUnbind()方法。 调用顺序为:onCreate --> onBind(只一次,不可多次绑定) --> onUnbind --> onDestory。

注意事项:在Service每一次的开启关闭过程中,只有onStart可被多次调用(通过多次startService调用),其他 onCreate,onBind,onUnbind,onDestory在一个生命周期中只能被调用一次。还有一点,目前我没有遇到过需要 startService和bindService交互使用的情况(我认为不会有这种需求),所以不必去考虑交互的问题,待遇到时再考虑不迟。

adcastReceiver只能通过startService启动Service ,因为广播本身生命周期很短,bind的话没有意义

Service的生命周期 :

Service的生命周期方法比Activity少一些,只有onCreate, onStart, onDestroy我们有两种方式启动一个Service,他们对Service

生命周期的影响是不一样的。

1 通过startService

Service会经历 onCreate -> onStart stopService的时候直接onDestroy

如果是调用者(TestServiceHolder)自己直接退出而没有调用stopService的话,Service会一直在后台运行。

下次TestServiceHolder再起来可以stopService。

2 通过bindService

Service只会运行onCreate, 这个时候 TestServiceHolder 和TestService绑定在一起

TestServiceHolder 退出了,Srevice就会调用onUnbind->onDestroyed所谓绑定在一起就共存亡了。

* 23:54

* 浏览 (134)

* 评论 (0)

* 分类: Android

2010-05-19

缩略显示

android模拟器命令详解

文章分类:移动开发

Android模拟器ndroid SDK自带一个移动设备模拟器 — 它是一个可以运行在你电脑上的虚拟设备. Android模 拟器可以让你不需使用物理设备即可预览、开发和测试Android应用程序.

上一页  4 5 6 7 8 9 10 11 12 13 14  下一页

Tags:Android Activity Intent

编辑录入:coldstar [复制链接] [打 印]
赞助商链接