Service翻译成中文是服务,熟悉Windows 系统的同学一定很熟悉了。Android里的Service跟Windows里的Service功能差不多,就是一个不可见的进程在后台执行。
Android中的服务,它与Activity不同,它是不能与用户交互的,不能自己启动的,运行在后台的程序,如果我们退出应用时,Service进程并没有结束,它仍然在后台运行,例如我们打开一个音乐播放器来听音乐,在听音乐的同时也想做下其它的事情,比如上网聊Q、或者上网浏览新闻之类的事情。这样的话,我们就需要用到Service服务了。下面我们以一个简单的音乐播放器的实例来说明下Service的生命周期和Service的使用。
下面是音乐播放器Demo的程序结构图:
Android Service 的生命周期:
Android中Service的生命周期并不是很复杂,只是继承了onCreate(), onStart(), onDestory()三个方法。当我们第一次启动Service服务时,调用onCreate() --> onStart()两个方法,当停止Service服务时,调用onDestory()方法。如果Service已经启动了,第二次再启动同一个服务时,就只是调用 onStart() 这个方法了。
Android Service 的使用:
[1] 参照上面的程序结构图,我们可以创建一个Android程序,在src目录下创建一个Activity,一个继承自Service类的服务类;同时在资源文件夹res目录下创建一个raw的文件夹存放音频文件,如把music.mp3音乐文件放在该目录下。该程序的主界面如下:
[2] layout目录下的main.xml文件的源码:
[3] src目录下MusicService.java源码:
[4] src目录下MusicServiceActivity源码:
[5] 最后,我们别忘了在AndroidManifest.xml配置文件中添加对Service的注册。即在application节点中添加
<service android:name=".MusicService"/> 进行注册。
[6] 我们来看下程序运行后的Log.e中显示的Service生命周期
[7] 我们在Android终端设备中查看下刚才启动的音乐播放服务,看看我们退出程序后,是不是该程序的服务还在运行的呢?按如下步骤:Menu --> Settings --> Applications --> Running services 。在弹出的 Running services 中可以看到有哪些服务在运行。
这样我们就看到我们退出程序后,是由于该服务还在后台运行着,所以我们的音乐还可以继续播放着。就这样,我们就可以一边享受音乐,一边可以聊QQ,或者浏览新闻等等。
分享到:
相关推荐
android service 简单实例代码 . binder继承一个接口,实现方法。
安卓Serice 实例 - 音乐播放器后台运行实例 ,可以播放音乐和 停止 音乐
Android实例源码-音乐播放器类安卓源代码(9例) ...简单音乐播放器,实现了播放器基本功能,使用service后台播放音乐,并使用异步线程加载音乐图片 边下载边播music 音乐播放器 音乐播放器 音乐播放器源码
关于Android Service的简单实例:属于start service类型,而不是bound service。
android service实例
android intent service 实例android intent service 实例android intent service 实例
NULL 博文链接:https://javajeye.iteye.com/blog/803007
主要为大家详细介绍了Android使用Service实现简单音乐播放实例,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
Android Service实例 Android Service 一般处理比较耗时的操作
NULL 博文链接:https://chaowen0668.iteye.com/blog/1090096
有四个小实例 分别是安卓 service的 有启动方式的 绑定方式的 线程方式的 aidl方式的 看了这四个应该更加容易的懂了
全书分为18章,分别讲解了UI布局实例集锦、控件实例集锦、自动化服务实例集锦、数据存储实例集锦、电话和短信实例集锦、图形图像实例集锦、和网络有关的实例集锦、多媒体实例集锦、Google地图实例集锦、GoogleAPI...
Android service 开发实例。欢迎大家下载学习
本书所介绍的各个应用实例简明扼要且极具实用价值,它们覆盖了Android 1.0的所有基本功能和高级功能。 由于Android 1.0是一个正在兴起的全新手机操作系统,所以当前支持它的手机还不多。和任何其他产品早期的...
android service 实例
Android Service AIDL实例
Android 的 Remote Service 开发实例RemoteService
Android创建服务实例图文实测,基于Eclipse, Android7, target=android-24 build-tools=25.0.2
实现了android的远程service调用哪个,使用了AIDL,并且提供了一个自定义类型的参数