码迷,mamicode.com
首页 > 其他好文 > 详细

Service的使用

时间:2015-07-15 18:31:32      阅读:98      评论:0      收藏:0      [点我收藏+]

标签:

Service的使用

使用Service服务需要在Manifest.xml文件中声明

<service android:name = "com.himanmin.xu.servicedemo.TimeService">
            <intent-filter>
                <action android:name="action"/>
            </intent-filter>
        </service>

在启用service时,根据Service是否需要需要与其他进程进行数据交互,启用方式不同。前者只需service在后台运行,后者可能需要得到service的数据反馈。

无数据交互的service,可以通过startService(intent)和stopService(intent)启动和关闭,而intent则通过

intent.setAction("action"),action需与Manifest.xml文件中的声明一致。

这种情况下service的生命周期为:

onCreate()->onStartCommand()->onDestroy()

 

需要数据交互的service,需要将service与反馈对象进行绑定。常见的,主进程开启一个service服务,然后将结果返回到主进程所在的Activity中。绑定和解除绑定分别使用bindService()和unBindService(),其中bindService()会绑定service或启动相应的service并绑定,目标service通过设置intent确定。在service类中,复写onBind()方法,并返回自定义的IBinder实例,该实例一般含有返回service实例的方法。在主进程的activity中,则需要创建ServiceConnection对象,获取返回的IBinder实例,并进而获取service,进行service自定义功能的数据操作。

这个过程的生命周期

onCerate()未创建->onBind()->onUnBind()->onDestroy()

 

Service的使用

标签:

原文地址:http://www.cnblogs.com/himanxu/p/4640985.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!