android学习笔记---40_建立能与访问者进行相互通信的本地服务,后台运行的service

本文介绍了Android中本地服务的概念,包括本地服务与远程服务的区别,以及如何通过startService()、stopService()和bindService()、unbindService()管理服务。重点讲解了使用bindService()进行服务与Activity间的通信,通过接口和Ibinder实现双向交互的详细步骤,并给出了具体的代码示例,展示了如何根据学号查询学生姓名的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

40_建立能与访问者进行相互通信的本地服务
-------------------------------------------
1.本地服务:如果服务和访问者在一个进程中那么就叫做本地服务。
  远程服务:如果服务和访问者不在同一个应用,那么这就叫做远程服务。
-----------------------------------------------------------------------
2.通过startService()和stopService()启动关闭服务。适用于服务和Activity之间没有调用交互的情况。
  如果相互之间需要方法调用或者传递参数,需要使用bindService()和unbindService()方法启动关闭服务。

采用Context.bindService()方法启动服务,在服务未被创建时,系统会先调用服务的onCreate()方法,接着调用onBind()方法,这个时候调用者和服务绑定在一

起。 如果客户端要与服务进行通信,那么,onBind()方法必须返回Ibinder对象。如果调用者退出了,系统就会先调用服务的onUnbind()方法,接着调用

onDestroy()方法。如果调用bindService()方法前服务已经被绑定,多次调用bindService()方法并不会导致多次创建服务及绑定(也就是说onCreate()和onBind()

方法并不会被多次调用)。如果调用者希望与正在绑定的服务解除绑定,可以调用unbindService()方法,调用该方法也会导致系统调用服务的onUnbind()--

>onDestroy()方法。
----------

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

添柴程序猿

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

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

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

打赏作者

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

抵扣说明:

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

余额充值