android为GPS功能支持专门提供了一个LocationManager类,所有GPS定位相关的服务、对象都将由该对象产生。

程序通过调用Context的getSystemService()方法来获取,例如:LocationManager lm=getSystemService(Context.LOCATION_SERVICE);

一旦在程序中获得了LocationManager对象之后,接下来即可调用LocationManager的方法来获取GPS定位的相关服务和对象了。

例:获取所有可用的LocationProvider

package com.example.helloandroid;import java.util.List;import android.app.Activity;
import android.content.Context;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;public class AllProvidersTest extends Activity {
ListView providers;
LocationManager lm;@Overridepublic void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.allproviders);providers=(ListView)findViewById(R.id.providers);lm=(LocationManager)getSystemService(Context.LOCATION_SERVICE);//获取系统所有的LocationProvider的名称List<String> providerNames=lm.getAllProviders();ArrayAdapter<String> adapter=new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,providerNames);//使用ListView来显示所有可用的LocationProviderproviders.setAdapter(adapter);}}

下面程序示范了如何通过手机实时地获取定位信息,包括用户所在的经度、纬度、高度。

package org.helloword;import android.app.Activity;
import android.content.Context;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.widget.EditText;public class LocationTest extends Activity {
EditText show;
LocationManager locmanager;@Overridepublic void onCreate(Bundle savedInstanceState) {// TODO Auto-generated method stubsuper.onCreate(savedInstanceState);setContentView(R.layout.location);show=(EditText)findViewById(R.id.show);locmanager=(LocationManager)getSystemService(Context.LOCATION_SERVICE);Location location=locmanager.getLastKnownLocation(LocationManager.GPS_PROVIDER);updateView(location);//设置每3秒获取一次定位信息locmanager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 3000, 8, new LocationListener(){public void onLocationChanged(Location location) {// TODO Auto-generated method stub//当GPS定位信息发生改变时,更新位置updateView(location);}public void onProviderDisabled(String provider) {// TODO Auto-generated method stubupdateView(null);}public void onProviderEnabled(String provider) {// TODO Auto-generated method stub//当GPS LocationProvider可用时,更新位置updateView(locmanager.getLastKnownLocation(provider));}public void onStatusChanged(String provider, int status,Bundle extras) {// TODO Auto-generated method stub}});}public void updateView(Location newlocation) {// TODO Auto-generated method stubif(newlocation!=null){StringBuilder sb=new StringBuilder();sb.append("经度:"+newlocation.getLongitude());sb.append("纬度:"+newlocation.getLatitude());sb.append("高度"+newlocation.getAltitude());show.setText(sb.toString());}else{show.setText("");}}}

android GPS开发相关推荐

  1. android 定位服务源码,android gps定位app源码(GpsTracker)

    [实例简介]做到了 gps 开启关闭后的提醒 以及地理位置记录(经纬度) [实例截图] [核心代码] package android.gpstracker; import android.app.Ac ...

  2. Android GPS中间层驱动开发调试

    ~.Android GPS中间层驱动开发调试小结  // rkeclair_v1.02_sdkdemo , ublox芯片       调通GPS功能,用串口可打印出位置数据,并可在gpslogger ...

  3. android agps,Android应用开发Android GPS ——AGPS源码分析及配置

    本文将带你了解Android应用开发Android GPS --AGPS源码分析及配置,希望本文对大家学Android有所帮助. " Android Framework GPS --AGPS ...

  4. 从Android界面开发谈起(转)

    原文地址:http://blog.csdn.net/nieweilin/article/details/5967815 这篇文章没有打算有一个很好的逻辑去介绍android的某个方面,全盘大致上就是我 ...

  5. 《Android/OPhone 开发完全讲义》样章和目录下载

    <Android/OPhone 开发完全讲义>一书已经出版,现提供3个样章(第1.8和14章)试读,欢迎提出宝贵意见. 购买:互动网(china-pub) 内容简介 本书近500页,共25 ...

  6. 《Android传感器开发与智能设备案例实战》——第1章,第1.2节Android的巨大优势...

    本节书摘来自异步社区<Android传感器开发与智能设备案例实战>一书中的第1章,第1.2节Android的巨大优势,作者 朱元波,更多章节内容可以访问云栖社区"异步社区&quo ...

  7. linux内核epub,Android底层开发技术实战详解——内核、移植和驱动(第2版)[EPUB][MOBI][AZW3][42.33MB]...

    内容简介 本书从底层原理开始讲起,结合真实的案例向读者详细介绍了Android内核.移植和驱动开发的整个流程.全书分为21章,依次讲解驱动移植的必要性, Goldfish.OMAP内核和驱动解析,显示 ...

  8. Android程序开发0基础教程(一)

    程序猿学英语就上视觉英语网 Android程序开发0基础教程(一) 平台简单介绍 令人激动的Google手机操作系统平台-Android在2007年11月13日正式公布了,这是一个开放源码的操作系统, ...

  9. Android 驱动(3)---Android驱动开发知识储备

    Android驱动开发知识储备 Android软件层次结构 (1)操作系统层 显示驱动(Frame Buffer),Flash内存驱动,照相机驱动,音频驱动,WiFi驱动,键盘驱动,蓝牙驱动,Bind ...

  10. Android camera(4)---Android Camera开发之基础知识篇

    Android Camera开发之基础知识篇 转自:https://blog.csdn.net/feiduclear_up/article/details/51968975#jump5 概述 Andr ...

最新文章

  1. Redis数据过期策略详解
  2. 刷道谷歌泄漏的面试题:面试官想从中考察你什么?
  3. hdu 5464(简单dp)
  4. SQLServer下 存储过程内 包含事务 及 返回处理是否成功
  5. 关于 HANA CE Function
  6. php与mysql连接程序_PHP与Mysql连接
  7. vue中注意watch的执行顺序
  8. 聊聊Elasticsearch的CachedSupplier
  9. 问题二十九:测试ray tracing中camera几个主要参数
  10. wpf button无边框_中国式新房无玄关?客厅真不缺这点面积!
  11. 计算机原理---七层网络协议详解
  12. 框架眼镜不好看戴隐形眼镜,这些情况要注意
  13. html格式显示图标异常,HTM或HTML图标变成无法显示和识别的解决方法大全
  14. 勘探重力实验matlab,重力场与重力勘探实验指导.ppt
  15. 计算机工程怎么评,美国电气与计算机工程专业怎么样?评价如何
  16. 【 C++ 技术】 C++ 高性能服务器网络框架设计细节
  17. 什么是Asterisk?
  18. 转游戏中找CALL的万能方法
  19. 《大话西游》你真的看懂了吗,kotlin命令行编译
  20. 一维谐振子定态 Schrödinger 方程的数值解法

热门文章

  1. web用pdfobject 对pdf 预览文件
  2. 产品读书《产品经理面试攻略》
  3. web界面设计要素及基本设计规范
  4. oppo(不root)手机查看万能钥匙破解的wifi密码实例
  5. 关于cc2500的介绍
  6. 解决“配置系统未能初始化”异常
  7. ibatis结果集resultClass的几种类型
  8. 计算机软件本科毕业生一般起薪多少,南京邮电大学本科毕业生平均薪资多少?一起来看看吧...
  9. 一、二线城市 IT 公司大盘点!建议收藏
  10. 【24】基于java的宠物医院管理系统