Service简介 Service组件表示一种服务,专门用于执行一些持续性的、耗时长的并且无需 与用户界面交互的操作 Service的运行是不可见的,通常用于执行一些无需用户交互,并需要持续运 行的任务 Service拥有独立的生命周期 Service没有界面(最多只能显示一个通知),当Service所对应的应用程序界 面不可见时,Service仍运行于应用程序主线程中 Android系统中提供了大量可以直接调用的系统Service,例如播放音乐、震 动、闹钟、通知栏消息等 Android软件开发 主讲:王海
Android软件开发 主讲:王海 Service简介 • Service组件表示一种服务,专门用于执行一些持续性的、耗时长的并且无需 与用户界面交互的操作 • Service的运行是不可见的,通常用于执行一些无需用户交互,并需要持续运 行的任务 • Service拥有独立的生命周期 • Service没有界面(最多只能显示一个通知),当Service所对应的应用程序界 面不可见时,Service仍运行于应用程序主线程中 • Android系统中提供了大量可以直接调用的系统Service,例如播放音乐、震 动、闹钟、通知栏消息等
Service分类 按照运行的进程不同,可以将Service分为: √本地(Local)Service √远程(Remote)Service 按照运行的形式分为: √前台Service √后台Service ·按照使用Servicel的方式可以分为: √启动(Start)方式Service √绑定(Bind)方式Service √混合方式Service Android软件开发 主讲:王海
Android软件开发 主讲:王海 Service分类 • 按照运行的进程不同,可以将Service分为: 本地(Local)Service 远程(Remote)Service • 按照运行的形式分为: 前台Service 后台Service • 按照使用Service的方式可以分为: 启动(Start)方式Service 绑定(Bind)方式Service 混合方式Service
创建Servicel的步骤 ①通过继承Service的方式来定义一个Servicel的子类 ②在应用程序的AndroidManifest.xml中配置Services组件 Android软件开发 主讲王海
Android软件开发 主讲:王海 创建Service的步骤 ①通过继承Service的方式来定义一个Service的子类 ②在应用程序的AndroidManifest.xml中配置Service组件
编写Service类 【语法】public abstract IBinder onBind(Intent intent); 【案例8-l】MyService1.java //一个空的Service.示例 public class MyServicel extends Service @Override public IBinder onBind(Intent intent){ return null; Android软件开发 主讲:王海
Android软件开发 主讲:王海 编写Service类 • 【语法】 • 【案例8- 1】MyService1.java public abstract IBinder onBind(Intent intent); // 一个空的Service示例 public class MyService1 extends Service { @Override public IBinder onBind(Intent intent) { return null; } }
配置Service 在AndroidManifest..xml中,每个Service组件都需要在元素的一个 子元素中进行配置 Android软件开发 主讲:王海
Android软件开发 主讲:王海 配置Service • 在AndroidManifest.xml中,每个Service组件都需要在元素的一个 子元素中进行配置
启动Service 启动Service7有Start和Bind两种方式 Intent intent new Intent(this,MyServicel.class); startService(intent); Android软件开发 主讲:王海
Android软件开发 主讲:王海 启动Service • 启动Service有Start和Bind两种方式 Intent intent = new Intent(this, MyService1.class); startService(intent);
Service生命周期回调方法 方法 功能描述 onCreate() 用于创建Service组件 onStartCommand(Intent intent,int flags,,int通过Start方式启动Service时调用 started) onBind(Intent intent) 通过Bind方式启动Service onUnbind(Intent intent) 通过Bind方式取消Service绑定 onRebind(Intent intent) 通过Bind方式重新绑定Service onDestroy() 用于销毁Service Android软件开发 主讲:王海
Android软件开发 主讲:王海 Service生命周期回调方法 方法 功能描述 onCreate() 用于创建Service组件 onStartCommand(Intent intent, int flags, int started) 通过Start方式启动Service时调用 onBind(Intent intent) 通过Bind方式启动Service onUnbind(Intent intent) 通过Bind方式取消Service绑定 onRebind(Intent intent) 通过Bind方式重新绑定Service onDestroy() 用于销毁Service