IT技术新闻
联系我们
当前位置:主页 > IT技术新闻 >

IT技术新闻

【Android的从零单排开发日记】之入门篇(五)——Android四大组件之Service,android四大

作者:AG集&#    发布时间: 2019-01-31

【Android的从零单排开发日记】之入门篇(五)——Android四大组件之Service,android四大

【Android的从零单排开发日记】之入门篇(五)——Android四大组件之Service,android四大
这几天忙着驾校考试,连电脑都碰不到了,今天总算告一段落了~~
Service作为Android的服务组件,默默地在后台为整个程序服务,辅助应用与系统中的其他组件或系统服务进行沟通。它跟Activity的级别差不多,但不能自己运行只能后台运行。service可以在很多场合的应用中使用,比如播放多媒体的时候用户启动了其他Activity这个时候程序要在后台继续播放,比如检测SD卡上文件的变化,再或者在后台记录你地理信息位置的改变等等, 总之服务总是藏在后台的。
ps:Service运行在主线程中的,所以用它做耗时工作时,同样会阻塞进程,所以最好是在service里开个子线程。 一、注册Service

service的注册跟activity的注册类似,同样是要在AndroidManifest.xml的文件里注册。

        <service android:name=".MinaService"><!-- 你自定义的service文件   (在<application></application>里面加)-->
        <intent-filter>
                <action android:name="com.MinaService" /><!-- 用intent启动时的快捷名(也可以用常规的方式启动) -->
                <category android:name="android.intent.category.default" />
        </intent-filter>
        </service>
二、Service的两种模式

service有两种模式,本地服务和远程服务。我们一般开发应用都是用的本地服务,而远程服务经常在做系统开发时被用到。所以今天我会主要讲本地的服务,远程服务放着以后再讲吧(其实UP主也没用过远程服务就是了==)

类别 区别  优点 缺点   应用
本地服务(Local) 该服务依附在主进程上,  服务依附在主进程上而不是独立的进程,这样在一定程度上节约了资源,另外Local服务因为是在同一进程因此不需要IPC,也不需要AIDL。相应bindService会方便很多。  主进程被Kill后,服务便会终止。  非常常见的应用如:HTC的音乐播放服务,天天动听音乐播放服务。
远程服务(Remote) 该服务是独立的进程,  服务为独立的进程,对应进程名格式为所在包名加上你指定的android:process字符串。由于是独立的进程,因此在Activity所在进程被Kill的时候,该服务依然在运行,不受其他进程影响,有利于为多个进程提供服务具有较高的灵活性。  该服务是独立的进程,会占用一定资源,并且使用AIDL进行IPC稍微麻烦一点。  一些提供系统服务的Service,这种Service是常驻的。
三、Service的生命周期及两种启动方式

service的生命周期比activity简单多了,原因是service是在后台运行的,它是一直运行的,所以不需要那么多的状态判断。它只继承了onCreate()、onStart()或者说是onStartCommand()、
// 2.0 API level之后,实现onStart等同于重写onStartCommand并返回  关于onStartCommon()的详解:http://blog.csdn.net/lizzy115/article/details/7001731

onDestroy()三个方法。
服务不能自己运行,需要通过调用Context.startService()或Context.bindService()方法启动服务。这两个方法都可以启动Service,但是它们的使用场合有所不同。

 四、Service实例

接下来我会写一个关于service的实例demo,希望看了之后会对大家有所帮助。

 五、结语

Service不仅可以与前端界面组件建立双向连接、提供数据和功能支持,也可以单向接受Intent对象的请求,进行数据的分析处理和功能调度。在不同的使用方式下,Service服务组件扮演的角色和开发模式完全不同。这种设计,也为理解Service带来了一定的难度。所以理解和习惯Service的使用显得非常重要。  参考文章:(1)Android Service学习之本地服务 http://android.blog.51cto.com/268543/527314/DEMO下载(百度网盘)(过期的请CALL我) 作者:cpacm联系方式:QQ 348515494(请注明博客园)
出处:(http://www.cnblogs.com/cpacm/p/3912578.html)
版权声明:本文的版权归作者与博客园共有。欢迎转载阅读,转载时须注明本文的详细链接。


http://www.bkjia.com/Androidjc/864278.htmlwww.bkjia.comtruehttp://www.bkjia.com/Androidjc/864278.htmlTechArticle【Android的从零单排开发日记】之入门篇(五)——Android四大组件之Service,android四大 这几天忙着驾校考试,连电脑都碰不到了,今天总算...

本文源自: 揭秘环亚娱乐骗局