Service组件

Service组件

1、Service是一个应用组件,后台(它是在主线程运行但可在分线程,因为没有和界面关联才叫后台)完成一个时间跨度比较大的工作且没有关联任何界面
2、一个Service可以完成下面这些工作:
访问网络
播放音乐
文件IO的操作
大量数据库操作
3、服务的特点
a)Service在后台运行,不用于用户进行交互
b)即使应用退出,服务也不会停止
c)默认在主线程中,但也可以将任务放在分线程中处理,这样可以避免用户界面的阻塞

Service得分类

1、Local Service(本地服务)
就是在同一进程中的(当前service)
2、Remote Service(远程服务)
就是不在同一进程(其它service)

启动与停止Service

1、方式一:一般启动
context.startService(Intent intent)
context.stopService(Intent intent)
第一次调用:——构造方法()——onCreate()——onStartCommand()
后面再调用:——onstartCommand()
stopService()——onDestory()
2、方式二:绑定启动
bindServicer(Intent intent,ServiceConnection connection)
unbindService(ServiceConnection connection)
区别:看Service启动后是否与启动者有关联
Service对象经历的生命周期是否相同
bindService(intent,ServiceConnection)
调用:——构造方法()——onCreate()——onBind()——onServiceConnected()
unbindService():(中有当前Activity与Service连接)——onUnbindonDe——onCreate()

AIDL理解:

1、每个应用程序都有自己独立进程,可以启动另一个进程服务
2、一个进程不能直接访问另一个进程内存空间,要想对话,需要将对象分解成操作系统可以理解的基本单元
且有序

AIDL

用于生成两个进程之间进行进程通信的代码;如果一个进程中要调用另一个进程中对象的操作,就可以使用AIDL生成可序列化的参数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值