Android 系统中 Location Service 的实现与架构

前言

定位服务是移动设备上最常用的功能之一,下文以 Android 源码为基础,详细分析了 Android 系统中定 位服务的架构和实现。定位服务是 Android 系统提供的一项系统服务,在 Android 系统中,所有系统服务 的架构都是类似的。只要明白其中一个,然后再去理解其他是很容易的。对于 Android 的应用开发人员来说 ,本文可以帮助他们了解他们所使用的 API 背后的实现。对于 Android 的系统开发人员来说,本文可以帮 助他们更好的了解 Android 系统架构。关于如何获取 Android 源码,请参阅 Android Source 的官方网站 :http://source.android.com/source/downloading.html  Android 源码中包含了大量的文件,有些 源文件甚至是同名的。为了清楚的指明我们所讨论的文件,本文在提到源码文件的时候都会指明其在 Android 源码树中的路径。

android.location 包与 API 代码示例

定位服务提供给应用层的 API 位于 android.location 包中,它其中包含的类和接口如表 1 所示:

在表 1 中,最重要的类是 LocationManager,这是整个定位服务的入口类。 清单 1 是使用定位 服务 API 的代码示例:

时间: 2024-11-03 09:27:24

Android 系统中 Location Service 的实现与架构的相关文章

在Android系统中Service的远程调用

在Android系统中Service的远程调用 http://liangruijun.blog.51cto.com/3061169/653344

Android系统中的进程管理:进程的创建

对于操作系统来说,进程管理是其最重要的职责之一. 考虑到这部分的内容较多,因此会拆分成几篇文章来讲解. 本文是进程管理系统文章的第一篇,会讲解Android系统中的进程创建. 本文适合Android平台的应用程序开发者,也适合对于Android系统内部实现感兴趣的读者. 概述 Android系统以Linux内核为基础,所以对于进程的管理自然离不开Linux本身提供的机制.例如: 通过fork来创建进行 通过信号量来管理进程 通过proc文件系统来查询和调整进程状态等 对于Android来说,进程

详细分析Android系统中定位服务的架构和实现

对于 Android 的应用开发人员来说,本文可以帮助他们了解他们所使用的 API 背后的实现.对于 Android 的系统开发人员来说,本文可以帮助他们更好的了解 Android 系统架构. 定位服务是移动设备上最常用的功能之一,下文以 Android 源码为基础,详细分析了 Android 系统中定位服务的架构和实现. 定位服务是 Android 系统提供的一项系统服务,在 Android 系统中,所有系统服务的架构都是类似的.只要明白其中一个,然后再去理解其他是很容易的. 对于 Andro

opengl-OpenGL 在Android系统中的显示问题

问题描述 OpenGL 在Android系统中的显示问题 openGL在android系统中只能全屏显示吗?可以控制让它只在屏幕的某一个部分显示吗

如何在android系统中实现pkcs11,或者有什么可用的开源类库?

问题描述 如何在android系统中实现pkcs11,或者有什么可用的开源类库? 如何在android系统中实现pkcs11,或者有什么可用的开源类库? 解决方案 无法实现 Sun==Oracle => copying bad :)而且更严重的是,在android中没法用,以为没有能够支持的标准PKCS#11(尽管JB确实用一个专用的PKCS#11提供一些东西).并不确定是否代码是在OpenJDK,但是如果是的话,你可以试着移植.但是那基本是不可能的.因为你需要完整的PKCS#11 API,对于

在android系统中如何播放、暂停、停止歌曲?

问题描述 在android系统中如何播放.暂停.停止歌曲? 我在程序中设置了播放.暂停.停止三个按钮.当我点击播放按钮,这个按钮就消失了,显示的是暂停按钮.反之亦然.当我点击播放按钮时,程序不出错.再点击暂停按钮时,就会出错.贴出代码: package com.mpIlango; import java.io.IOException; import java.util.ArrayList; import android.app.Activity; import android.media.Med

Android系统中设置TextView的行间距(非行高)

Android系统中TextView默认显示中文时会比较紧凑,不是很美观.为了让每行保持一定的行间距,可以设置属性android:lineSpacingExtra或android:lineSpacingMultiplier. 关于Android下TextView中文换行问题,可查看Android自定义view-文本自动换行. 1.android:lineSpacingExtra 设置行间距,如"3dp". 2.android:lineSpacingMultiplier 设置行间距的倍数

怎么在android程序中使用service中的call isms程序发短信

问题描述 怎么在android程序中使用service中的call isms程序发短信 怎么在android程序中使用service中的call isms程序发短信,最好能有个简单的demo.主要是上层怎么调用这个service以及怎么实现发短信 解决方案 service call isms 是 adb命令,可以在adb shell命令行下执行.http://www.cnblogs.com/eustoma/archive/2012/04/27/2473351.html

在android系统中如何监控可写入的控件获得焦点这样的事件

问题描述 在android系统中如何监控可写入的控件获得焦点这样的事件 在写一个手机监控程序的时候发现,需要监控用户的可输入状态.不知道有没有大神能帮忙提供些思路.这是个自主的监控程序,将会在android模拟器中运行,用作与主机进行通信.不是在真正在手机中运行的木马. 初始想法是枚举所有的窗口,然后找出哪一个窗口获得焦点,并判断此窗口是否有edit属性,嗯,PC上应该就是这样做到吧,键盘勾子是不行的,原因是不知道当前是否可输入状态.只不过在android中实在不知道该怎么做,另外,枚举的缺陷是