在Android中Service概述

Service的主要用途是提供后台服务调用,与Activity不同,service没有界面,也正因为如此,它不像Activity那样当用户离开应用界面就停止,Service则一直在后台运行,除非明确命令其停止。

Service也有生命周期的。当启动Service时,首先调用OnCreate()方法,然后调用onStart()方法。当Service停止时,会调用onDestroy()方法。

启动Service有两种方式,分别是调用startService()和bindService()。使用前者时,如何该Service还没启动,那么系统会先后调用该Service的onCreate()方法和onStart()方法,并且在使用完后该Service并不停止,除非使用stopService()明确停止。bindService()用于绑定一个Service,如何Service不存在,绑定就会失败;不过可以设置bindService()的参数,指定当Service不存时启动该Service,通过此方法启动的Service在使用完后,系统会自动停止该Service。

如果只是提供后台服务的话,那么不需要使用Service,使用线程Thread就可以了。Service的特点还在于进程间的服务调用,不仅在一个应用程序内部可以调用,还可以跨应用程序调用。调用Service服务的程序成为客户端Client。

如何Service与Client同在一个应用程序内,那么它们默认是在同一个进程、同一个线程内运行,因此,为了不使Client线程挂起,一般创建Service时都会重新建立一个Thread完成具体的工作,Service仅是提供一个调用的接口。而如果Client是在另一个程序中,那么Client和Service则运行在不同的进程中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

计算机刘老师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值