北大青鸟

首页 > 安卓技术教程

站内公告

安卓教程:Android系统组件Service详解

责任编辑:宏鹏来源:武汉北大青鸟鲁广校区时间:04-29
导读: Android中的服务类似windows中的服务,服务一般没有用户操作界面,它运行于系统中不容易被用户发觉,可以使用它开发如监控之类的程序。北大青鸟鲁广校区专业老师来详解这一系统组件。

Android中的服务类似windows中的服务,服务一般没有用户操作界面,它运行于系统中不容易被用户发觉,可以使用它开发如监控之类的程序。服务的开发比较简单,如下:

步:继承Service类

public class MyService extends Service { }

第二步:在AndroidManifest.xml文件中的节点里对服务进行配置

服务不能自己运行,需要通过调用Context.startService()或Context.bindService()方法启动服务。这两个方法都可以启动Service,但是它们的使用场合有所不同。使用startService()方法启用服务,访问者与服务之间没有关连,即使访问者退出了,服务仍然运行。使用bindService()方法启用服务,访问者与服务绑定在了一起,访问者一旦退出,服务也就终止,大有“不求同时生,必须同时死”的特点。

采用Context.startService()方法启动服务,只能调用Context.sService()方法结束服务,服务结束时会调用onDestroy()方法。

通过startService()和sService()启动关闭服务。适用于服务和访问者之间没有交互的情况。如果服务和访问者之间需要方法调用或者传递参数,侧需要使用bindService()和unbindService()方法启动关闭服务。

采用Context.bindService()方法启动服务,在服务未被创建时,系统会先调用服务的onCreate()方法,接着调用onBind()方法,这个时候访问者和服务绑定在一起。 如果访问者要与服务进行通信,那么,onBind()方法必须返回Ibinder对象。如果访问者退出了,系统就会先调用服务的onUnbind()方法,接着调用onDestroy()方法。如果调用bindService()方法前服务已经被绑定,多次调用bindService()方法并不会导致多次创建服务及绑定(也就是说onCreate()和onBind()方法并不会被多次调用)。如果访问者希望与正在绑定的服务解除绑定,可以调用unbindService()方法,调用该方法也会导致系统调用服务的onUnbind()-->onDestroy()方法。

服务的生命周期跟启动服务的方法有关:

当采用Context.startService()方法启动服务,与之有关的生命周期方法

onCreate()、 onStart() 、onDestroy()

onCreate()该方法在服务被创建时调用

该方法只会被调用一次,无论调用多少次startService()或bindService()方法,服务也只被创建一次。

onStart() 只有采用Context.startService()方法启动服务时才会回调该方法。该方法在服务开始运行时被调用。多次调用startService()方法尽管不会多次创建服务,但onStart() 方法会被多次调用。

onDestroy()该方法在服务被终止时调用。

当采用Context.bindService()方法启动服务,与之有关的生命周期方法

onCreate()--> onBind() --> onUnbind() --> onDestroy() onBind()只有采Context.bindService()方法启动服务时才会回调该方法。该方法在调用者与服务绑定时被调用,当调用者与服务已经绑定,多次调用Context.bindService()方法并不会导致该方法被多次调用。

onUnbind()只有采用Context.bindService()方法启动服务时才会回调该方法。该方法在调用者与服务解除绑定时被调用。

如果先采用startService()方法启动服务,然后调用bindService()方法绑定到服务,再调用unbindService()方法解除绑定,后调用bindService()方法再次绑定到服务,触发的生命周期方法如下:

onCreate()-->onStart()-->onBind()-->onUnbind()[重载后的方法需返回true]-->onRebind()

武汉北大青鸟鲁广校区,专业老师会帮你找到适合自己学习的课程和就业方向,详细了解安卓系统组件service详解,现在就与专业老师在线老师沟通或拨打电话:13125006136,或QQ咨询:13125006136.

    看过该安卓技术教程的还看过

本文标题:安卓教程:Android系统组件Service详解,责任编辑:宏鹏,来源:武汉北大青鸟鲁广校区栏目,于04-29发布于北大青鸟鲁广校区。 Android中的服务类似windows中的服务,服务一般没有用户操作界面,它运行于系统中不容易被用户发觉,可以使用它开发如监控之类的程序。北大青鸟鲁广校区专业老师来详解这一系统组件。

专业老师指导

赵老师

赵老师

从事IT教育培训十年有余,致力于帮助广大学子找到适合自己的专业

立即在线咨询

培训咨询客服

陈老师

陈老师

IT培训专业客服,用自己的真诚解决了无数学子的困惑

立即在线咨询

本文地址:https://m.027hpedu.com/html/3216.html

文章标题:安卓教程:Android系统组件Service详解

上一篇:

下一篇:

热点关注

推荐安卓技术教程

热门安卓技术教程

初中生
高中生
大学生
打工者
男生
女生

预约你的精彩未来

预约将免费领取7天课程体验卡

-------请选择试预约课程-------

JAVA
WEB前端
PHP
UI设计
Python
电子商务
视频剪辑
大数据工程师
平面设计

83345人已领取

全国百余家校区

只为您方便就学

北大青鸟鲁广校区

北大青鸟鲁广校区

武汉市洪山区珞喻路724号(地铁二号线光谷广场站F口出)

预约到校
领取学习大礼包

首页

热门课程

视频网课

新闻资讯

关于学校

联系学校

预约选课申请

  • 预约时间

    请选择预约时间

  • 预约课程

    请选择预约课程

  • 姓   名
  • 手机号
  • QQ 号
  • 微信号

添加老师微信号

专业老师24小时1对1学习指导

定制专属于你的专属学习方案

微信号:17740513250

复制老师的微信号

复制成功啦

快去微信添加老师为好友吧~

北大青鸟小青

微信号:17740513250

北大青鸟小青

微信号:17740513250

设置备注
小主知道啦