创建、配置Service
来源:互联网 发布:svn 默认端口号 编辑:程序博客网 时间:2024/04/27 12:40
Service是Android四大组件中与Activity最相似的组件,它们都代表可执行的程序,Service与Activity的区别在于:Service一直在后台运行,它没有用户界面,所以绝不会到前台来。一旦Service被启动起来之后,它就与Activity一样。它完全具有自己的生命周期。关于程序中Activity与Service的选择标准是:如果某个程序组件需要在运行时向用户呈现某界面,或者该程序需要与用户交互,就需要使用Activity,否则就应该考虑使用Service了。
开发Service需要两个步骤:
- 定义一个继承Service的子类
package com.mystudy.kibi.service;import android.app.Service;import android.content.Intent;import android.os.IBinder;/** * Created by KIBI熊 on 16/6/28. */public class TestService extends Service{ /** * 该方法是Service子类必须实现的方法.该方法返回一个IBinder对象, * 应用程序可通过该对象与Service组建通信. * @param intent * @return */ @Override public IBinder onBind(Intent intent) { return null; } /** * 当该Service第一次被创建后将立即回调该方法 */ @Override public void onCreate() { super.onCreate(); } /** * 该方法的早期版本是 void onStart(Intent intent, int startId), * 每次客户端调用startService(Intent intent)方法启动该Service时 * 都会回调该方法. * @param intent * @param flags * @param startId * @return */ @Override public int onStartCommand(Intent intent, int flags, int startId) { return super.onStartCommand(intent, flags, startId); } /** * 当该Service上绑定的所有客户端都断开连接时将会回调该方法 */ @Override public boolean onUnbind(Intent intent) { return super.onUnbind(intent); } /** * 当该Service被关闭之前将会回调该方法 */ @Override public void onDestroy() { super.onDestroy(); }}
上面这个Service什么也没干,实际上它就是Service组件的框架,如果希望Service组件做某些事,那只要在onCreate()或onStartCommand()方法中定义相关业务代码即可。
在AndroidManifest.xml文件中配置该Service
定义了上面的Service之后,接下来需要在AndroidManifest.xml文件中配置该Service,配置Service使用< service …/> 元素。与配置Activity相似的是,配置Service时也可为< service …/> 元素拍之< intent-filter …/> 子元素,用于说明该Service可被那些Intent启动。
<service android:name="com.mystudy.kibi.service.TestService"> <intent-filter> <action android:name="com.mystudy.kibi.service.TEST_SERVICE"/> </intent-filter></service>
当该Service开发完成之后,接下来就可在程序中运行该Service了,Android系统中运行Service有如下两种方法:
- 通过Context的startService()方法
通过该方法启用Service,访问者与Service之间没有关联,即使访问者退出了,Service仍然运行。 - 通过Context的bindService()方法
使用该方法启用Service,访问者与Service绑定在了一起,访问者一旦退出,Service也就终止。
0 0
- 创建、配置Service
- Android Service 创建,配置
- 创建、配置、启动、停止Service
- 【Service】创建前台Service
- 创建webservice 用service.xml配置(复杂点的方法)
- Android的Service与BroadcastReceiver之一 Service简介、创建、配置、启动、停止与其生命周期
- 创建一个 Game Service
- 创建Windows Service
- c#创建Web Service
- C#创建Windows Service
- axis2创建web service
- axis2创建web service
- windows service的创建
- Native Service 创建过程
- axis2创建web service
- Native Service 创建过程
- Android AIDL创建Service
- ServiceBase类创建Service
- TextSwitcher 使用详解
- JavaScript框架(一)
- Python操作MySql
- javaweb学习总结(三十四)——使用JDBC处理MySQL大数据
- 使用php-excel-reader读取excel文件
- 创建、配置Service
- Unsupported major.minor version 52.0
- JavaScript框架(二)
- JavaWeb学习总结(三十五)——使用JDBC处理Oracle大数据
- [软件人生]关于我,我的未来,我的思考
- spring常用注解
- mysql 函数说明
- javaweb学习总结(三十六)——使用JDBC进行批处理
- 【报错】HibernateException:hibernate.cfg.xml not found