作为android的四大组件之一,服务也少不了很多重要的知识点。下面我们从最基本的开始学习。

1.1服务的创建 首先创建一个ServiceTest类继承Service。我们会重写onCreate(),onStartCommand()和onDestory()三个方法,他们是每个服务中最常用到的方法。其中onCreate方法会在服务创建的时候调用,onStartCommand方法会在每次服务启动的时候调用,onDestory方法会在服务销毁的时候调用。通常情况下,如果我们希望服务一旦启动就立刻去执行某个动作,就可以将逻辑写在onStartCommand方法里。而服务销毁的时候,我们又应该在onDestory()方法中去回收那些不再使用的资源。另外需要注意,每一个服务都需要在androidManifest.xml文件中注册才能生效。这是android四大组件的特点,不知道大家注意到没有。

1.2服务的启动和停止

定义好服务之后,接下来就应该考虑如何去启动和停止服务。启动和停止服务的方法当然不会陌生。主要借助Intent来实现的。

启动服务代码:

Intent startIntent=new Intent(this,ServiceTest.class);

startService(startIntent);      停止服务代码:

Intent stopIntent=new Intent(this,ServiceTest.class);

stopService(stopIntent);

虽然学会启动服务和停止服务的方法了,但是不知道你心里有没有疑惑呢?onCreate()和onStartCommand()到底有什么区别呢?

其实 onCreate方法是在服务第一次创建的时候调用的,eronstartCommand()方法则在每次服务启动的时候调用的,第一次点击启动的时候,服务还未创建过,所以两个方法都会执行。之后多次启动服务你就会发现只有onStartCommand()中的方法可以得到执行了。

android Service服务简介(一)的更多相关文章

  1. Android Service 服务(三)—— bindService与remoteService

    (转自:http://blog.csdn.net/ithomer/article/details/7366396)   一.bindService简介 bindService是绑定Service服务, ...

  2. Android Service 服务

    一. Service简介 Service是android 系统中的四大组件之一(Activity.Service.BroadcastReceiver.ContentProvider),它跟Activi ...

  3. Android Service 服务(一)—— Service .

    http://blog.csdn.net/ithomer/article/details/7364024 一. Service简介 Service是android 系统中的四大组件之一(Activit ...

  4. Android Service 服务(二)—— BroadcastReceiver

    (转自:http://blog.csdn.net/ithomer/article/details/7365147) 一. BroadcastReceiver简介 BroadcastReceiver,用 ...

  5. [Android] Service服务详解以及如何使service服务不被杀死

    排版上的细节有些不好看,主要是我用的MarkDown编辑器预览和这里的不一样,在那个上面的样式很舒服.这里要改的地方太多就不想改了,将就看吧.下次写的时候注意.还有看到错误给我提啊. 本文链接:htt ...

  6. android service服务的学习

    1.Service简单概述   Service(服务)是一个一种可以在后台执行长时间运行操作而没有用户界面的应用组件.服务可由其他应用组件启动(如Activity),服务一旦被启动将在后台一直运行,即 ...

  7. Android Service服务

    Service是Android系统中提供的四大组件之一.它是运行在后台的一种服务,一般声明周期较长,不直接与用户进行交互.    服务不能自己运行,需要通过调用Context.startService ...

  8. Android service 服务的应用之电话监听器以及短信监听器

    首先建立一个项目工程文件,如下图所示:

  9. Android Service服务的生命周期

    与activity类似,服务也存在生命周期回调方法,你可以实现这些方法来监控服务的状态变化,并在适当的时机执行一些操作. 以下代码提纲展示了服务的每个生命周期回调方法: public class Ex ...

随机推荐

  1. JavaScript入门几个概念

    JavaScript入门几个概念 刚刚入门JavaScript的时候,搞懂DOM.BOM以及它们的对象document和window很有必要. DOM是为了操作文档出现的API,document是它的 ...

  2. 类数组转数组Array.prototype.slice.call(arrayLike)

    转换方式:Array.prototype.slice.call(arrayLike) 附:(http://www.jianshu.com/p/f8466e83cef0) 首先Array.prototy ...

  3. 设计模式——工厂方法模式(Factory Method)

    原文地址:http://www.cnblogs.com/Bobby0322/p/4179921.html 介绍 在简单工厂模式中,我们提到,工厂方法模式是简单工厂模式的一个延伸,它属于Gof23中设计 ...

  4. O/S-Error: (OS 23) Data error (cyclic redundancy check)问题处理

    RMAN-03002: backup plus archivelog 命令 (在 08/24/2015 03:31:00 上) 失败ORA-19501: 文件 "XXXXXX.DBF&quo ...

  5. RAC环境修改数据库字符集

    sql> alter system set cluster_database=false scope=spfile sid='qcjk1';   --------注意sid根据不同环境要修改 在 ...

  6. C++中临时对象的产生与优化

    看到了几篇讲的不错的博客,这里收集起来 不明白的地方互相参考 https://blog.csdn.net/fangqingan_java/article/details/9320769 https:/ ...

  7. bootstrap-multiselect.js如何动态更新select里的数据

    在使用jQuery的bootstrap-multiselect插件时可能会遇到一个问题 就是想要动态的去更新select里的数据 比如我们要使一个id=select的选择框实现多选 那么先用ajax获 ...

  8. HDU 5536 字典树

    题意:就是公式. 这现场赛O(n^3)能过,觉得太没天理了. 做法:字典树,枚举两个数,然后在字典树上贪心的跑. #include <bits/stdc++.h> using namesp ...

  9. HDU 6178 Monkeys

    题意:给出一棵 N 个节点树,上面有 K 个猴子,然后竟可能删边,但是每一只猴子必须有直接相邻的猴子与之相邻.求最少剩下几条边. 分析:一条边可以用两只猴子站,这样的一条点对,越多越好,如果是ans个 ...

  10. php 的 number_format使用

    $num = 1.0258963147; // 1.0259 $num = number_format($num, 4, '.', ''); $num = number_format($num); $ ...