`

用GPS获取自己的位置并解析自己的确定位置

阅读更多

    具体方法如下:

public void getLocation() throws IOException {
    	TextView tv = (TextView)this.findViewById(R.id.mytextView);
    	StringBuffer sb = new StringBuffer();
    	
    	Location loc;
    	LocationManager locMan;
    	LocationProvider locPro;
    	
    	List<LocationProvider> proList;
    	
    	locMan = (LocationManager)this.getSystemService(LOCATION_SERVICE);
    	
    	List<String> providers = locMan.getProviders(true);
    	
    	for(String provider : providers) {
    		Log.i(TAG, provider);
    		System.out.println("--------------------------------"+provider);
    		locMan.requestLocationUpdates(provider, 
    								      1000, 0, 
    								      new LocationListener(){

											public void onLocationChanged(
													Location location) {
												// TODO Auto-generated method stub
												
											}

											public void onProviderDisabled(
													String provider) {
												// TODO Auto-generated method stub
												
											}

											public void onProviderEnabled(
													String provider) {
												// TODO Auto-generated method stub
												
											}

											public void onStatusChanged(
													String provider,
													int status, Bundle extras) {
												// TODO Auto-generated method stub
												
											}});
    		
    		
    		Location location = locMan.getLastKnownLocation(provider);
    		//Location location = locMan.getLastKnownLocation(LocationManager.GPS_PROVIDER);
    		//Location location = locMan.getProvider(LocationManager.GPS_PROVIDER);
    		
    		if(location!=null) {
    			sb.append("lat:").append(location.getLatitude()).append(",").append(location.getLongitude());
    			Geocoder gc = new Geocoder(this, Locale.getDefault());
    			List<Address> addresses = gc.getFromLocation(location.getLatitude(), location.getLongitude(), 10);
    			
    			if(addresses.size() > 0) {
    				Address address = addresses.get(0);
    				
    				for(int i = 0; i < address.getMaxAddressLineIndex(); i ++) {
    					sb.append(address.getAddressLine(i)).append("\n");
    					sb.append(address.getLocality()).append("\n");
    					sb.append(address.getPostalCode()).append("\n");
    					sb.append(address.getCountryName()).append("\n");
    				}
    				
    			}
    			
    			
    		} else {
    			sb.append("No Location");
    		}
    		
    		
    		tv.setText(sb);
    	}
    	
    	
    }


权限为<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
 <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>

 

分享到:
评论

相关推荐

    GPS解析库 nmealib

    nmealib是一个专门用于解析这些NMEA语句的库,它允许开发者轻松地从GPS设备获取位置、速度、时间等关键信息。 NMEA语句通常以"$"开头,后跟一串由逗号分隔的数据字段,例如"$GPGGA"代表全球定位系统固定数据。每个...

    stm32 gps数据解析

    对于涉及位置服务的应用场景来说,集成GPS模块进行位置数据获取变得尤为重要。本篇内容主要介绍了如何在STM32上实现GPS数据的解析过程,并提供了一段示例代码。 ### GPS数据格式简介 #### NMEA 0183协议 GPS设备...

    gps时钟解析

    本文将详细讲解如何从GPS信号中获取并解析正确的时钟信息。 首先,我们要了解GPS信号的基本结构。GPS信号由两种载波信号L1和L2组成,分别在1575.42 MHz和1227.60 MHz频率上广播。这些载波被调制了伪随机噪声码...

    Exif及GPS算法解析

    3. **GPS标签处理**:当发现GPS标签时,会获取其对应的偏移量,并跳转到该位置读取具体的GPS数据。 4. **异常处理**:在整个过程中,对于可能出现的错误情况,比如文件无法打开或者文件格式不正确,代码都进行了...

    百度地图wifi定位获取地理位置

    在标题中提到的“百度地图WiFi定位获取地理位置”,是指利用百度地图提供的API(应用程序接口)服务,通过用户的WiFi信号来确定其所在的地理位置。这种技术通常用于移动设备,如智能手机或平板电脑,它依赖于设备的...

    GPS信号解码 卫星信号源码解析

    标题中的“GPS信号解码 卫星信号源码解析”是指使用编程语言(在这个案例中是VC++)处理和解析全球定位系统(GPS)的卫星信号。这是一个涉及到多个IT领域的复杂任务,包括信号处理、软件开发和地理信息系统(GIS)。...

    GPS数据获取

    首先,GPS接收器通过接收来自多个GPS卫星的信号来确定其位置。每个卫星都会发送包含其精确时间戳和位置的数据,这些数据在接收器上被解析并用于计算接收器的三维位置(经度、纬度和海拔)。经纬度是地球上地理位置的...

    GPS计算用户位置

    标题中的“GPS计算用户位置”指的是使用全球定位系统(Global Positioning System,GPS)来获取设备或用户在地球上的精确地理位置。GPS是一个由美国建立和运营的全球卫星导航系统,它通过接收至少四颗GPS卫星的信号...

    gps.rar_GPS_GPS 解析

    在IT领域,GPS(全球定位系统)是一种广泛应用于导航、定位和时间同步的重要技术...通过解析GPS数据,我们可以获取到精确的地理位置信息,这对于户外导航、追踪、物联网设备以及其他依赖定位服务的应用来说至关重要。

    stm32读取GPS数据

    本文将深入探讨如何利用STM32处理器读取并解析GPS数据,以获取地理位置、高度、速度和时间等相关信息。 首先,我们需要了解GPS数据的基本结构。GPS接收器通过接收来自多个卫星的信号来确定位置、时间和速度。这些...

    gps数据采集及解析

    GPS(全球定位系统)是一种通过接收卫星信号来确定地理位置的全球导航卫星系统。它发送的原始数据包括时间戳、卫星位置和信号强度等,这些信息经过解析后,可以转换为经度、纬度、高度等我们常见的地理坐标。 在...

    GPS定位Demo获取位置信息

    本教程通过一个名为"DemoGps"的示例项目,来讲解如何在应用程序中实现GPS定位并获取当前位置信息。 首先,我们要了解GPS(Global Positioning System)的基本原理。GPS是一个由美国建立和运行的全球卫星导航系统,...

    Driver_gps信号_GPS_GPS解析_

    4. **解码数据信息**:解析出数据码后,可以获取卫星的轨道参数、时间信息等,结合多颗卫星的数据,利用三角定位原理计算出接收器的三维位置。 5. **BD双模支持**:对于同时支持GPS和BD的设备,还需要处理两种系统...

    Gps.rar_GPS_GPS数据_gps windows mobile_获取GPS

    5. **使用GPS数据**:获取到GPS数据后,用户可以进行路线规划、导航、位置分享、运动追踪等各种应用。 在Windows Mobile设备上,开发者还可以利用.NET Compact Framework提供的API来编写自定义程序,直接访问GPS...

    GPS.zip_GPS_NMEA_串口帧 解析_单片机 串口

    在本文中,我们将深入探讨如何使用单片机,特别是STM32F103ZE,来处理GPS模块发送的NMEA串口帧,并解析出关键的地理位置信息,如经纬度和UTC时间。首先,让我们了解GPS系统的基础知识,然后进入NMEA协议,以及STM32...

    解析GPS模块数据的代码程序

    在IT领域,GPS(全球定位系统)模块是用于获取地理位置信息的重要硬件设备。它通过接收来自卫星的信号来计算设备的精确位置、速度和时间。本项目提供的代码程序旨在解析这些GPS模块产生的原始数据,从而提取出有价值...

    C语言 GPS应用程序,包括前端数据采集 读取星历 单点定位 差分定位 RTCM电文编码译码等程序

    C语言GPS应用程序是一种用于处理全球定位系统(GPS)数据的软件工具,主要涉及以下几个关键功能:前端数据采集、星历读取、单点定位、差分定位以及RTCM(Radio Technical Commission for Maritime Services)电文的...

    gps-jiexi.zip_GPS 电文_GPS解析

    GPS(全球定位系统)是通过卫星导航来确定地球上任何位置的技术,它发送和接收电文以获取精确的位置、时间和速度信息。电文解析是理解这些数据的关键步骤。 GPS电文通常由多个部分组成,包括报文头、GPS数据和报...

    C#百度地图API获取经纬度所在地理位置

    本文将深入探讨如何使用C#结合百度地图API来获取用户的经纬度,并根据这些经纬度确定其所在地理位置。 首先,我们需要了解百度地图API的基本概念。百度地图API是百度提供的一套接口,允许开发者在其应用程序中集成...

    GPS.zip_GPS模块数据解析_SNN_gps单片机程序

    在IT行业中,GPS(全球定位系统)模块是嵌入式系统和物联网应用中常见的组件,用于获取地理位置信息。本文将详细讲解与“GPS.zip”压缩包相关的知识点,包括GPS模块的工作原理、数据解析以及如何在单片机上使用SNN ...

Global site tag (gtag.js) - Google Analytics