在讨论Service 之前,我们需要了解两点,非常重要的两点

(1)     Service 不会专门启动一条单独的进程,Service与它所在应用位于同一个进程中

(2)     Service也不是专门的一条线程,因此不应该在Service中直接处理耗时的任务

看完demo之后,我们来看看Service的生命周期

初步学习Service之后,大家可能会有疑问,这Service也不咋地,Service主要特点是在后台执行耗时任务,而且不用提供用户界面和用户直接交互,这在Activity中直接new一个Thread不就行了嘛,何必又整个Service出来多费事啊,针对这个问题,大家需要了解两点。

(1)Service的优先级高于后台挂起的Activity,如果系统运行内存不够,相对来说会杀死挂起的Activity

(2)Service和Thread完成是两回事,半点毛关系都没有,但你在Activity中另起一Thread时,Activity 被 finish 之后,如果你没有主动停止 Thread或者 Thread           里的run 方法没有执行完毕的话,Thread也会一直执行,但是在这之后你就再也没法获取Thread的应用啦,但是Service不一样,你的任何Activity都可以重新           控制你想要控制的Service

ANDROID培训准备资料之Service的更多相关文章

  1. ANDROID培训准备资料之项目结构简单介绍

    Android Studio项目结构初步主要介绍下面几个文件夹,后续再补充 (1)java文件夹的介绍 (2)Res文件夹的介绍 (3)R文件的介绍 (4)Manifests文件夹的介绍 我们先看看整 ...

  2. ANDROID培训准备资料之BroadcastReceiver

    BroacastReceiver的启动方式? (1)     创建需要启动的BroadcastReceiver的Intent. (2)     调用context的sendBroadcast()或者s ...

  3. Android培训准备资料之UI一些相似控件和控件一些相似属性之间的区别

    这一篇博客主要收集五大布局中的一些相似控件和控件一些相似属性之间的区别 ImageView ImageButton Button 三者有啥区别? (1)Button继承自TextView,ImageV ...

  4. Android培训准备资料之五大布局简单介绍

    本篇博客主要简单的给大家介绍一下Android五大布局 (1)LinearLayout(线性布局) (2)RelativeLayout(相对布局) (3)FrameLayout(帧布局) (4)Abs ...

  5. ANDROID培训准备资料之四大组件的简单介绍

    Android四大组件是一个android app 最基本的组成部分,这篇博客主要给大家简单的介绍一下四种组件 (1)Activities (2)Services (3)BroadcastReceiv ...

  6. Android培训准备资料之Android开发环境的搭建

    Android开发环境的搭建主要分为以下四步: (1)下载JDK并安装 (2)配置JDK环境变量 (3)下载安装Android Studio (4)配置Android SDK环境变量(可执行可不执行) ...

  7. Android 培训准备资料之project与module的区别(1)

    project和module的区别? 现在我们来看看在Android studio中怎样新建一个project (1)file->new->new project. Application ...

  8. android培训机构排名

    Android开发行业的热度打开了Android培训领域的市场,我们会发现有很多的Android培训机构都在大势宣传自己的师资.就业情况.教学环境等 ,然而到底要选择哪个呢?令很多的人困惑.2015年 ...

  9. android音乐播放器(Service+ContentProvider+Broadcast+Activity四大组件完成)

    1.获取音乐 1-1:获取手机中的音乐(用ContentProvider内容提供者来完成): package com.firefly.util; import java.util.ArrayList; ...

随机推荐

  1. WebSocket实现Java后台消息推送

    1.什么是WebSocket WebSocket协议是基于TCP的一种新的网络协议.它实现了浏览器与服务器全双工(full-duplex)通信——允许服务器主动发送信息给客户端. 2.实现原理 在实现 ...

  2. vue组件懒加载

    vue2组件懒加载浅析 一. 什么是懒加载 懒加载也叫延迟加载,即在需要的时候进行加载,随用随载. 二.为什么需要懒加载 在单页应用中,如果没有应用懒加载,运用webpack打包后的文件将会异常的大, ...

  3. Odoo12 之主题创建或扩展

    初次使用 Odoo 来制作网站,因Odoo自带代码块效果单一,无法满足当前网站展示效果,需要对当前代码块进行添加或扩展.而这个代码块是属于网站中的布局设计这一块,Odoo 将所有的布局以及逻辑行为,都 ...

  4. 微软Cloud+AI本地化社区更新

    有关微软Cloud+AI本地化方面的介绍请参见我之前的文章:<微软Cloud+AI本地化社区贡献指南>,本文将公布该社区最新的活动变更事宜. MLCP改进 我们想借此机会向您介绍我们在社区 ...

  5. 【cf600】E. Lomsat gelral(dsu on tree)

    传送门 题意: 求子树众数. 思路: \(dsu\ on\ tree\)模板题,用一个桶记录即可. 感觉\(dsu\ on\ tree\)这个算法的涉及真是巧妙呀,保留重链的信息,不断暴力轻边,并且不 ...

  6. [C4W1] Convolutional Neural Networks - Foundations of Convolutional Neural Networks

    第一周 卷积神经网络(Foundations of Convolutional Neural Networks) 计算机视觉(Computer vision) 计算机视觉是一个飞速发展的一个领域,这多 ...

  7. LeetCode 674. Longest Continuous Increasing Subsequence最长连续递增序列 (C++/Java)

    题目: Given an unsorted array of integers, find the length of longest continuous increasing subsequenc ...

  8. 大话设计模式Python实现-观察者模式

    观察者模式(发布-订阅模式 Publish Subscribe Pattern):定义了一种一对多的关系,让多个观察对象同时监听一个主题对象,当主题对象状态发生变化时会通知所有观察者,是它们能够自动更 ...

  9. N!(hdu1042)

    N! Given an integer N(0 ≤ N ≤ 10000), your task is to calculate N! Input One N in one line, process ...

  10. php imagemagick 翻译目录

    图像处理(ImageMagick) 介绍 安装/配置 要求 安装 运行时配置 资源类型 预定义常数 例子 基本用法 Imagick - Imagick课 Imagick :: adaptiveBlur ...