`

Android学习之-Service服务.

阅读更多

service是android4大组件之一, 主要用于:后台运行和跨进程访问(通过AIDL实现进程间通信).

service的生命周期: service的生命周期包含3个阶段: 创建、开始、销毁。

编写自定义服务需要3个步骤:

1.继承android.app.Service.实现onBind方法.

2.在AndroidManifest.xml中使用<service>标签配置服务

3.如果要开启一个服务调用startService方法, 如果要销毁一个服务,则调用: stopService方法.

 

系统服务:

1.android系统本身实现的一些服务,如音频服务, 窗口服务

2.通过Activity类得getSystemService方法获取系统服务,系统服务的ID在android.context.Context类中被定义.

 

 

AIDL服务-跨进程服务

1.在android系统中,进程间不能共享内存,故android使用了aidl机制实现进程间通信.

2.android采用远程过程调用(Remote Procedure Call , RPC)方式实现,与很多RPC方案一样,android使用接口定义语言(Interface Definition Language,IDL)来公开服务接口.所以这种跨进程访问的服务叫AIDL.

 

总结: android中的service是android4大组件之一, android本身提供了很多系统服务, 通过这些服务可以实现复杂功能.

并且我们可以实现自定义服务来实现后台运行, 也可通过AIDL服务提供给其他应用使用.

 

参考文章: http://wenku.baidu.com/view/58dbf82bcfc789eb172dc8d8.html

 

              http://www.linuxidc.com/Linux/2011-04/33966p8.htm

 

分享到:
评论

相关推荐

    android-location-service-源码.rar

    “android-location-service-源码.rar”包含了Android系统中定位服务的核心源代码,包括LocationManagerService、LocationProvider、GpsLocationProvider、NetworkLocationProvider等关键类。通过对这些源码的深入...

    Android--Application-Service.rar_DEMO_service

    在Android开发中,Service是四大组件之一,它用于在后台执行长时间运行的操作,即使用户界面关闭仍然可以继续运行。这个"Android--Application-Service.rar_DEMO_service"的压缩包提供了一个学习Android Service基础...

    android-sdk-windows.7z

    1. **SDK Tools**: 这是SDK的基础工具,包含了用于构建、调试和优化Android应用的命令行工具,如adb(Android Debug Bridge)、dx(Dalvik编译器)、ddms(Dalvik Debug Monitor Service)等。 2. **Platform Tools...

    android-sdk-windows.rar

    《Android SDK for Windows详解》 Android SDK(Software Development Kit)是Android系统开发的重要工具集,为开发者提供...通过学习和掌握Android SDK,开发者能够创建出功能丰富、用户体验优秀的Android应用程序。

    Android代码-山东建筑大学Android实验3--12.zip

    8. **实验8**:可能涉及服务(Service)的概念,学生可能学习了如何创建后台运行的服务,即使应用在后台或者被用户关闭时也能继续执行任务。 每个实验通常会涵盖一个特定的Android开发主题,通过实际编写和调试代码...

    android-sdk_r17-windows.zip

    总的来说,Android SDK r17是开发者进入Android世界的重要入口,提供了所有必要的工具和技术,使他们能够创造出丰富的、跨设备的应用程序,服务全球数亿的Android用户。随着技术的不断发展,开发者需要不断学习和...

    Android学习总结-Intent详解.doc

    Intent在Android开发中扮演着至关重要的角色,它是四大组件(Activity、Service、BroadcastReceiver和ContentProvider)间通信的关键。Intent不仅用于应用间的交互,也可以在同一个应用内的不同组件之间传递信息。...

    Android auto-update-service-develop-IT计算机-毕业设计.zip

    本文将基于提供的"Android auto-update-service-develop"源码Demo,深入剖析自动更新服务的实现机制,为学习者提供详尽的指导。 首先,自动更新服务通常基于Google的Play服务框架,利用Google Play Store的更新机制...

    Android安卓经典设计学习例程源代码-ServiceSample.rar

    ServiceSample是一个经典的Android学习项目,旨在帮助开发者深入理解如何在Android应用中使用Service组件。这个压缩包包含了一系列示例代码,展示了Service的各种用法。 Service在Android中的主要用途包括播放音乐...

    Android--开发--doc.rar

    在Android开发领域,掌握核心知识点是至关重要的...这个"Android--开发--doc"文档可能包含了以上所有或部分知识点的详细解释,通过学习,开发者可以提升自己的Android开发技能,解决实际问题,创建出色的Android应用。

    android-sdk_r24.4.1-windows.zip

    此外,理解Android的组件模型,如活动(Activity)、服务(Service)、广播接收器(Broadcast Receiver)和内容提供者(Content Provider),是构建功能完整应用的基础。 总之,"android-sdk_r24.4.1-windows.zip...

    Android快速入门2010-10-1.doc

    通过以上介绍,读者可以对Android开发的基本环境和系统架构有一个初步的认识,为进一步学习和实践打下基础。在实际开发中,还需要结合具体的API文档和开发实践,逐步深入理解和掌握Android平台的各种特性和技巧。

    Android应用源码qiyi-IT计算机-毕业设计.zip

    再者,Android应用的核心组件包括Activity、Service、BroadcastReceiver、ContentProvider等,它们共同构成了Android系统的基石。在源码中,我们应关注这些组件的创建、启动、通信以及生命周期管理,这些都是开发者...

    arcgis-runtime-samples-android-100.4.0.zip

    7. **服务端与客户端数据同步**:ArcGIS支持与ArcGIS Server或其他GIS服务的交互,例如通过FeatureService进行数据的增删改查,实现服务端和客户端数据的同步。 8. **3D地图支持**:虽然在Android平台上,3D地图...

    native-service-master.zip_Android Native_android_android service

    总结来说,"native-service-master.zip"提供的示例项目旨在帮助开发者学习如何在Android平台上创建和管理原生服务,包括使用JNI、NDK、AIDL以及处理线程和同步问题。这个项目将提供实践操作经验,加深对Android ...

    Android--开发--面试题.rar

    - Android应用程序架构:理解Activity、Service、BroadcastReceiver、ContentProvider等组件的工作原理。 - UI布局:如LinearLayout、RelativeLayout、ConstraintLayout等布局管理器的使用。 - 数据存储:SQLite...

    安卓Android源码——auto-update-service-develop.zip

    "安卓Android源码——auto-update-service-develop.zip"这个压缩包很可能包含了用于自动更新服务的源代码,这对于那些希望构建具备自动更新功能的Android应用开发者来说是非常有价值的资源。在这个项目中,我们可以...

    arcgis-runtime-sdk-android-guide-100.9.0.zip

    通过深入学习和实践《ArcGIS Runtime SDK for Android Guide 100.9.0》,开发者能够构建出功能丰富、性能优异的地理信息应用程序,满足各种业务需求,例如地图导航、资产管理、环境监测、公共服务等。

    Android--kaifa.rar_android

    6. **服务(Service)**:阐述后台运行的服务,如何创建和管理服务,以及服务与Activity的区别。 7. **广播接收器(BroadcastReceiver)**:介绍Android中的事件驱动编程,如何注册和使用BroadcastReceiver响应系统广播...

Global site tag (gtag.js) - Google Analytics