`
LoveZhou
  • 浏览: 272478 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Android GPS定位 获取经纬度

阅读更多
移动 是手机与手持设备的最大特点,可以通过Eclipse的DDMS视图,模拟设备的位置变化,改变经纬度后,点击send,然后运行程序,在应用程序中,动态的获取设备位置,然后显示当前的位置信息。

获取位置信息分为三步:
1. 添加系统权限,来支持对LBS硬件的访问
   <uses-permission    android:name="android.permission.ACCESS_FINE_LOCATION">
  </uses-permission>

2. 得到系统服务 的LocationManager 对象     
         LocationManager loctionManager;
        String contextService=Context.LOCATION_SERVICE;
        //通过系统服务,取得LocationManager对象
        loctionManager=(LocationManager) getSystemService(contextService);

3. 得到位置提供器,通过位置提供器,得到位置信息,可以指定具体的位置提供器,也可以提供一个标准集合,让系统根据 标准匹配最适合的位置提供器,位置信息是由位置提供其提供的。
     a.   通过GPS位置提供器获得位置(指定具体的位置提供器)
        String provider=LocationManager.GPS_PROVIDER;
       Location location = loctionManager.getLastKnownLocation(provider);
       
     b. 使用标准集合,让系统自动选择可用的最佳位置提供器,提供位置
        Criteria criteria = new Criteria();
        criteria.setAccuracy(Criteria.ACCURACY_FINE);//高精度
        criteria.setAltitudeRequired(false);//不要求海拔
        criteria.setBearingRequired(false);//不要求方位
        criteria.setCostAllowed(true);//允许有花费
        criteria.setPowerRequirement(Criteria.POWER_LOW);//低功耗

       //从可用的位置提供器中,匹配以上标准的最佳提供器
        String provider = loctionManager.getBestProvider(criteria, true);
       
        //获得最后一次变化的位置
        Location location = loctionManager.getLastKnownLocation(provider);

最后将位置信息显示在TextView中,如图:


监听位置的变化
        //监听位置变化,2秒一次,距离10米以上
        loctionManager.requestLocationUpdates(provider, 2000, 10, locationListener);

//位置监听器
    private final LocationListener locationListener = new LocationListener() {
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
}
@Override
public void onProviderEnabled(String provider) {
}
@Override
public void onProviderDisabled(String provider) {
}
//当位置变化时触发
@Override
public void onLocationChanged(Location location) {
//使用新的location更新TextView显示
updateWithNewLocation(location);
}
};

通过改变位置经纬度,程序会自动更新TextView显示的位置信息

  • 大小: 17.5 KB
  • 大小: 7.3 KB
  • 大小: 7.8 KB
  • 大小: 17.5 KB
分享到:
评论
32 楼 新乡阿永 2015-08-07  
这个怎么用啊?
31 楼 mvpstevenlin 2013-08-26  
LoveZhou 写道
mvpstevenlin 写道
我在模拟器上运行,没有内容。
请问博主,应该怎么用?

到设置中把gps定位打开试试

谢谢 博主
30 楼 LoveZhou 2013-05-06  
pimkle 写道
2.3.3报错

google 可能已经不支持这种方式定位了,现在我在公司的项目里,用的是百度定位
29 楼 pimkle 2013-05-04  
2.3.3报错
28 楼 czltx224 2013-04-28  
不行啊,獲取不到
27 楼 LoveZhou 2013-03-25  
xiexinjing 写道
附件不是源代码
是源代码,这个demo是很久以前的了,当时测试可以获取,现在google定位可能获取不到位置了,我在公司用百度的开放sdk获取的位置
26 楼 xiexinjing 2013-03-21  
附件不是源代码
25 楼 yaoguanyuan 2013-02-08  
我用这代码得到的数值怎么跟你上面的数据是一模一样的,为什么不是我当地的经纬度值
24 楼 zhaomingshen 2012-12-19  
真个是没得结果,测试环境,三星PAD N8000,Android4.0,开启GPS,开启WLAN,插上手机卡,信号肯定是有的,有朋友晓得是怎么回事不呢?
23 楼 liangzedong 2012-12-17  
获取经纬度两个数字,请问这两个数字有什么用呢?可以怎么用?
22 楼 zhouxiangang123 2012-11-22  
很不错,我的也不能定位~

21 楼 min_you1314 2012-08-23  
很不错,好像 不能定位
20 楼 LoveZhou 2012-05-03  
mvpstevenlin 写道
我在模拟器上运行,没有内容。
请问博主,应该怎么用?

到设置中把gps定位打开试试
19 楼 mvpstevenlin 2012-05-02  
我在模拟器上运行,没有内容。
请问博主,应该怎么用?
18 楼 wf1023 2012-04-05  
感谢分享...
17 楼 LoveZhou 2012-03-16  
han0917 写道
LoveZhou 写道
JACKDG2010 写道
location 在真机上运行是null。

在真机上有可能是null,有获取不到的情况,gps定位不到,需要用network定位,network定位,位置不入gps准确,但是只要手机有信号就能定到,经常是很大一个范围内的手机显示都在同一个位置

那如何实现精确定位啊???另外在室内测试为什么获取不到啊?

在室内有取不到的情况,还不太清楚如何精确定位,看很多软件,定位也都是定大体位置,都不精确
16 楼 han0917 2012-03-15  
LoveZhou 写道
JACKDG2010 写道
location 在真机上运行是null。

在真机上有可能是null,有获取不到的情况,gps定位不到,需要用network定位,network定位,位置不入gps准确,但是只要手机有信号就能定到,经常是很大一个范围内的手机显示都在同一个位置

那如何实现精确定位啊???另外在室内测试为什么获取不到啊?
15 楼 LoveZhou 2012-01-16  
335062868 写道
这个是用百度定位还是Google定位的呢?

google
14 楼 335062868 2012-01-16  
这个是用百度定位还是Google定位的呢?
13 楼 LoveZhou 2012-01-13  
JACKDG2010 写道
location 在真机上运行是null。

在真机上有可能是null,有获取不到的情况,gps定位不到,需要用network定位,network定位,位置不入gps准确,但是只要手机有信号就能定到,经常是很大一个范围内的手机显示都在同一个位置

相关推荐

    xamarin android gps定位获取经纬度

    xamarin android中使用gps定位获取经纬度,入门的简单介绍:http://blog.csdn.net/kebi007/article/details/74936979

    android gps定位获取经纬度

    本篇将详细介绍如何在Android中获取经纬度坐标。 一、Android权限设置 在AndroidManifest.xml文件中,必须声明使用GPS的权限,这是获取位置信息的前提。添加以下代码: ```xml &lt;uses-permission android:name=...

    android基于Gps 定位和基站定位获取经纬度

    在Android中,我们可以使用`LocationManager`服务来请求GPS定位服务。首先,需要在AndroidManifest.xml文件中添加必要的权限: ```xml &lt;uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" ...

    AndroidGPS定位,获取经纬度位置

    本教程将深入探讨如何在Android应用程序中使用GPS获取经纬度坐标,并将其显示在TextView中。以下是一系列详细步骤和相关知识点: 1. **AndroidManifest.xml配置**: 在Android应用中使用GPS服务,必须在`...

    android获取GPS经纬度,并根据经纬度获取准确地址( 纯原生)

    其中,ACCESS_FINE_LOCATION用于获取更精确的GPS定位,而ACCESS_COARSE_LOCATION则可以获取基于网络的粗略位置。 接下来,创建一个工具类,用于获取GPS经纬度。我们可以创建一个名为`LocationUtil`的Java类,包含一...

    Android根据GPS获取经纬度和海拔

    本文将详细介绍如何在Android Studio项目中根据GPS获取经纬度和海拔。 首先,为了获取地理位置信息,我们需要在AndroidManifest.xml文件中请求相应的权限。添加以下权限: ```xml &lt;uses-permission android:name=...

    Android GPS定位(获取经纬度)

    完美封装的Android GPS定位(获取经纬度)管理类,详情见:http://blog.csdn.net/u012810020/article/details/52517976

    GPSTask Android GPS定位(获取经纬度).zip

    GPSTask Android GPS定位(获取经纬度),完美封装的Android GPS定位,详见:http://blog.csdn.net/u012810020/article/details/52517976

    android studio获取当前经纬度的简单实例

    本实例将教你如何在Android Studio中实现这一功能,利用GPS(全球定位系统)和LBS(Location-Based Services,基于位置的服务)获取精确的位置信息。下面我们将详细讲解这个过程。 首先,确保你的AndroidManifest....

    android获取GPS经纬度,并根据经纬度获取准确地址 _andoid 原生开发定位无法获取经纬度,

    在Android设备上,我们可以利用内置的GPS传感器或者网络定位服务来获取经纬度坐标。 1. **开启GPS服务** 在Android中,使用LocationManager服务来管理位置更新。首先,在AndroidManifest.xml中添加权限: ```xml ...

    GPS定位获取经纬度

    "GPS定位获取经纬度"这个主题涉及到如何在应用中检测并利用GPS服务来获取用户的精确地理位置坐标,即经度和纬度。这里我们将深入探讨相关知识点。 首先,我们需要了解GPS的基本原理。GPS是一个全球卫星导航系统,...

    Android应用实现GPS定位返回经纬度Demo

    在Android平台上,开发一款应用以实现GPS定位并获取经纬度值是常见的需求。这个"Android应用实现GPS定位返回经纬度Demo"就是一个实例,它演示了如何有效地从Android系统的Location服务中获取地理位置信息。下面我们...

    android 百度API 获取经纬度

    以上就是一个基本的Android应用通过百度API获取经纬度并显示在地图上的过程。在实际开发中,你可能还需要处理各种异常情况,如定位失败、用户禁止定位权限等。同时,为了提高用户体验,可以考虑使用异步任务或者...

    Android中GPS定位(获取经纬度)

    以下是一份详细的关于如何在Android中实现GPS定位以获取经纬度的指南: 首先,要在AndroidManifest.xml文件中声明必要的权限,以允许应用访问设备的GPS服务。这两条权限是: ```xml &lt;uses-permission android:name...

    Android获取GPS定位(获取经纬度)

    本文将深入探讨如何在Android中实现GPS定位,获取经纬度坐标。 首先,我们需要理解Android系统中的定位框架。Android提供了一个名为Location Services的框架,它包含了多种定位方式,包括GPS(全球定位系统)、网络...

    android 基于基站,apn,gps,wifi,network 根据不同手机sim卡获取经纬度

    标题提到的“基于基站,APN,GPS,WiFi,Network 根据不同手机SIM卡获取经纬度”涉及了多种定位技术,每种都有其特性和应用场景。下面将详细介绍这些技术以及如何在Android中实现。 首先,我们来了解几种主要的定位...

Global site tag (gtag.js) - Google Analytics