`
寻梦者
  • 浏览: 638167 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

android中的service

 
阅读更多

把service的一些特性总结一下,基本知识就不介绍了.

1、主要在后台运行。

2、分两种类型:

remote和location(远程和本地)

区别:远程的可以用在不同进程间访问,通过aidl实现(aidl以后介绍),当访问的进程结束掉后,还可以在后台继续进行。

本地的是在同一个进程间访问,当访问的进程结束后一起关掉。

3、打开service的方法有两种:

一种:直接打开法:

通过startservice(Intent)这个方法打开,与之对应的是stopservice(Intent)这个方法关闭。

二种:通过bind的方法:

通过bindservice这个方法打开连接上service,与之对应该的是unbindservice这个方法断掉连接并关闭service.

需要注意的是:

(1)第一种方法只能打开service让它先运行起来,如果其它应用要使用他必须得bindService(Intent,ServiceConnection,int),然后再生成一个service的对象,就可以引用这个service对象里的方法了。

(2)如果用第一种方法打开,必须用stopservice关闭service,如果末调用stopservice,本地service有的时候应用程序虽然已经退出了,但是这个进程还末被系统回收,service还会运行,远程也需要自己关。

(3)如果第一种方法打开,每个应用想bind这个service时,需要掉用bindservice,如果不想连接了就只需要掉用 unbindservice,这个只是断开与service的连接,而service还在后台运行,此时过程中service在startservice 时调用oncreate()-->onstart(),在stopservice时调用onDestroy().

(4)如果service在bind之前末打开service,应用可以通过bindservice这个方法先打开service再连接service, 这就是上面说的第二种打开方法,这种方法在调用unbindservice时不但会断掉连接还会关闭service,此时过程中service在 bindservice时调用oncreate()-->onbind(),在unbindservice时调用 onunbind()--->onDestroy().

建议:

当有多处应用要访问一个远程的service时,可以先启动service在后台运行,然后在每一个应用中bind这个service,这样的话很方便,而且在应用程序中打开service也会快一点。

分享到:
评论

相关推荐

    Android中Service源码下载

    本资源提供了关于Android中Service的源码,重点展示了Service的生命周期以及如何在Service中播放音乐。通过分析和学习这个`ServiceTest`项目,我们可以深入理解Service的工作原理和用法。 首先,Service的生命周期...

    Android中Service组件的使用

    之后,客户端就可以通过这个对象调用Service中的方法了。连接Service的过程如下: ```java Intent intent = new Intent(this, MyService.class); bindService(intent, new ServiceConnection() { @Override public...

    android中service组件自我学习练习

    在Android应用开发中,Service组件是四大组件之一,它用于在后台执行长时间运行的操作,而无需与用户交互。Service可以在用户界面关闭或者应用被切换到后台时仍然保持运行状态,这使得Service成为处理音乐播放、后台...

    Android中Service完全解析(上)

    Intent常用于在startService()中传递命令,而Binder接口则允许直接调用Service中的方法,实现更复杂的数据交换。 为了确保Service的正常运行,开发者需要注意内存管理和线程处理。由于Service运行在主线程中,长...

    Android中service基本用法,生命周期1

    startService启动方式,只在activity中启动和销毁,和activity关系不大,即使antivity退出,服务任然运行,比如后台放音乐,对应生命周期: bindService启动方式,和activity绑定后,和activity共存亡,activity...

    Android中Service的全面总结

    主要全面总结了Android中Service的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    Android中Service的作用与定义.pdf

    为避免这种情况,通常建议在Service中使用IntentService或HandlerThread来处理后台任务,确保操作在单独的工作线程中执行。 6. Service的启动与停止 - 启动服务:使用startService()启动Service,通过stopService...

    Android中Service的手动、自动以及特殊条件下的重启

    在Android应用开发中,Service是四大组件之一,用于在后台执行长时间运行的操作,不与用户交互。本篇文章将深入探讨Service的手动重启、自动重启以及在特殊条件下的重启策略,帮助开发者更好地理解和管理Service的...

    Android 中service 开发实例

    在Android应用开发中,Service是四大组件之一,它在后台执行长时间运行的操作,不与用户交互。本教程将深入探讨Android Service的开发实例,帮助开发者理解如何在Android应用程序中使用Service来实现后台任务。 ...

    Android中Service和BocardcastReceiver举例

    在Android应用开发中,Service和BroadcastReceiver是两个非常重要的组件,它们各自承担着不同的职责,但又能在某些场景下相互配合工作。本示例将详细解释如何在Android中使用Service和BroadcastReceiver来实现手机...

    Android中service基本用法,生命周期2

    startService启动方式,只在activity中启动和销毁,和activity关系不大,即使antivity退出,服务任然运行,比如后台放音乐,对应生命周期: bindService启动方式,和activity绑定后,和activity共存亡,activity...

    Android Service Demo

    在Android应用开发中,Service是四大组件之一,用于在后台执行长时间运行的操作,不与用户界面直接交互。"Android Service Demo"是一个示例项目,它展示了如何在Android应用中使用Service,尤其是结合AIDL(Android ...

    Android中Service的生命周期解析.pdf

    在Android系统中,Service是应用程序框架的一个关键组件,它允许应用程序在后台运行,即使用户界面不在活动状态。Service主要用于执行长时间运行的操作,如播放音乐、处理网络交易等,而不需直接与用户交互。本篇...

    在Android中Service概述和AIDL例子

    在Android系统中,Service是一种重要的组件,用于在后台执行长时间运行的操作或与远程进程进行交互。Service不提供用户界面,但可以与其他组件(如Activity)交互。本篇将深入探讨Service的基本概念、生命周期以及...

    Android中Service(后台服务)详解

    (1).Service可以说是一个在后台运行的Activity。它不是一个单独的进程,它只需要应用告诉它要在后台做什么就可以了。 (2).它要是实现和用户的交互的话需要通过通知栏或者是通过发送广播,UI去接收显示。 (3).它的...

    浅谈Android中Service的注册方式及使用

    在Android中,Service的注册方式有多种,从Service的启动方式上,可以将Service分为Started Service和Bound Service。无论哪种具体的Service启动类型,都是通过继承Service基类自定义而来。在使用Service时,要想...

    Android中Service生命周期演示案例的任务要求.pdf

    - 在Service中进行长时间操作时,考虑使用IntentService,以避免阻塞主线程。 通过这个案例,开发者不仅能够理解Service的基本使用,还能掌握如何在不同生命周期方法中进行操作,以及如何利用广播进行服务和活动...

    Android中Service和Activity相互通信示例代码

    在Android中,Activity主要负责前台页面的展示,Service主要负责需要长期运行的任务,所以在我们实际开发中,就会常常遇到Activity与Service之间的通信,本文就给大家详细介绍了关于Android中Service和Activity相互...

Global site tag (gtag.js) - Google Analytics