android 调用gps获取经纬度的方法大同小异,实则差不了多少。但是使用起来,有的方法看起来很冗杂,而且很不好用。下面为大家介绍中很简单的方法,而且是实时监听位置的变化。

首先定义:

private Location location;
private String locationProvider;private LocationManager locationManager;

然后再获取经纬度的时候直接调用getLocationInfo()这个方法,获取到location,就可以了。

 private void getLocationInfo() {locationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);// 获取所有可用的位置提供器List<String> providers = locationManager.getProviders(true);if (providers.contains(LocationManager.GPS_PROVIDER)) {// 如果是GPSlocationProvider = LocationManager.GPS_PROVIDER;}
//    else if (providers.contains(LocationManager.NETWORK_PROVIDER)) {
//       // 如果是Network
//       locationProvider = LocationManager.NETWORK_PROVIDER;
//    }else {Toast.makeText(this, "没有可用的位置提供器", Toast.LENGTH_SHORT).show();return;}// 获取LocationLocation location = locationManager.getLastKnownLocation(locationProvider);if (location != null) {// 不为空,显示地理位置经纬度String jd =location.getLongitude();String wd =location.getLatitude();} else {ToastUtils.showToast(this, "GPS未定位到位置");System.out.println("GPS未定位到位置,请查看是否打开了GPS ?");}// 监视地理位置变化locationManager.requestLocationUpdates(locationProvider, 2000, 1, locationListener);}

    温馨提示:在android 5.0以后除了在AndroidManifest.xml里面申请权限之外,还要在调用方法之前去动态申请定位权限。

private void requestPermission() {if (ContextCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED) {if (ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.ACCESS_COARSE_LOCATION)) {ToastUtils.showToast(this, "您已经拒绝过一次了");}ActivityCompat.requestPermissions(this,new String[]{Manifest.permission.ACCESS_COARSE_LOCATION, Manifest.permission.ACCESS_FINE_LOCATION}, 0);}
}

Android通过手机GPS获取经纬度方法相关推荐

  1. Android--使用手机GPS获取经纬度

    Android–使用手机GPS获取经纬度 <div class="article_manage clearfix"><div class="articl ...

  2. 可运行的GPS获取经纬度和获取基站例子(环境Android Studio 3.5.2扒拉能运行的例子找到太辛苦了要么版本太老。)

    可运行的GPS获取经纬度和获取基站例子(环境Android Studio 3.5.2扒拉能运行的例子找到太辛苦了要么版本太老.) 为了检测GPS和基站修改结果,结合网络例子.单独抠出来可运行实例,GP ...

  3. android 设置壁纸页面,Android实现手机壁纸改变的方法

    本文实例讲述了Android实现手机壁纸改变的方法.分享给大家供大家参考.具体如下: main.xml布局文件: android:orientation="vertical" an ...

  4. android 高德地图定位获取经纬度

    android 高德地图定位获取经纬度 之前开发定位都是集成百度的,领导说要用高德的,没办法干吧,官方的文档太详细了看着真累. 我们得先去官网注册开发者账号,创建应用,填写自己项目的包名和SHA1, ...

  5. android+改变屏幕方向,Android改变手机屏幕朝向的方法

    本文实例讲述了Android改变手机屏幕朝向的方法.分享给大家供大家参考.具体如下: 模拟当点击按钮时,使手机朝向发生改变. main.xml布局文件: android:orientation=&qu ...

  6. android震动服务能设置时长么,Android实现手机振动设置的方法

    本文实例讲述了Android实现手机振动设置的方法.分享给大家供大家参考.具体如下: main.xml布局文件: android:orientation="vertical" an ...

  7. Android和蓝牙GPS结合的方法

    这篇未完成的文章写于2016年初,两年后翻到了,贴出来... 1.1. Android LMS的原理 Android系统设计了一个以LocationManagerService为核心的位置管理架构提供 ...

  8. Android开发:LocationManager获取经纬度及定位过程(附demo)

    其实LocationManager,Geocoder这些Android API给我们提供的这些类就可以满足了.下面笔者就来讲讲如何利用LocationManager获取经纬度,并利用Geocoder将 ...

  9. android地图方位角_Android获取经纬度、计算距离、方位角

    最近在Android上做GPS的东西,获取经纬度.计算距离.方位角,感觉在搞GIS样.当然,玩笑了,玩玩而已,稍微总结一下. 经度指示南北方向,纵向. 纬度指示东西方向,横向. 获取经纬度 使用GPS ...

最新文章

  1. 计算机硬件的作用论文,计算机硬件的作用论文.doc
  2. 【PAT乙级】1032 挖掘机技术哪家强 (20 分)
  3. android桌面小组件开发_快使用Scriptable自己开发一个iPhone小组件吧
  4. HDU - 2196 Computer(树形dp)
  5. java 轮询请求接口_js调用轮询接口
  6. 多层动态库的编译及使用
  7. Android开源git40个App源码
  8. Arturia Pigments for Mac - 数字波表双引擎合成器插件
  9. 奥鹏刷分软件_【中国大学mooc刷课系统和奥鹏在线作业自动答案软件哪个好用】中国大学mooc刷课系统和奥鹏在线作业自动答案软件对比-ZOL下载...
  10. Arduino教程 RFID-RC522读IC卡门禁原理及破解防御
  11. Python常用模块13-python的cx_Oracle模块
  12. 详述GPS原理及RTK技术应用
  13. 图片不能置于底层怎么办_excel如何设置图片置于底层
  14. 批量导出二维码并生成压缩文件
  15. 怎样使用secureCRT连接路由器
  16. uni-app实现文件管理器(Android)
  17. 【译】如何学习机器学习
  18. 实现两直角坐标系转换
  19. 第八讲:期望最大化算法(EM algorithm)
  20. 程序员最爱用的8个代码编辑器,你用哪款?

热门文章

  1. clickhouse杂记
  2. 简易人事管理系统(pyqt5+mysql)
  3. 华为防火墙初始化配置与高级配置
  4. 无法解压文件请重新启动计算机,解压文件是弹出来说4G以上的文件无法解压是怎么回事...
  5. Modbus TCP通信协议详解
  6. 计算机Word如何删空行,Word如何使用宏快速删除空行
  7. 会计计算机综合实训报告,会计综合模拟实训报告_0.doc
  8. mac上使用sips命令快速裁剪、旋转、翻转图片
  9. ftk的python binding
  10. 策略模式 VS 状态模式