android关于LocationManager的gps定位

LocationManager提供了两种定位当前位置的方法 GPS和NETWORK 其中gps的误差大概50m左右 network大概500m

起初当gps打开后 我使用Location location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);来获取location 可是一直为null不知道是什么原因 网上搜了很久终于找到了解决方案

android有一个Criteria类可以直接判断当前适合用gps或者network 并且设置LocationListener监听器实时更新location 直接上代码

private void getLocalAddress() {

LocationManager locationManager;

locationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);

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 = locationManager.getBestProvider(criteria, true);

Location location = locationManager.getLastKnownLocation(provider);

//updateWithNewLocation(location);

locationManager.requestLocationUpdates(provider, 2000, 10,

locationListener);

updateWithNewLocation(location);

}

private final LocationListener locationListener = new LocationListener() {

public void onLocationChanged(Location location) {

updateWithNewLocation(location);

}

public void onProviderDisabled(String provider) {

updateWithNewLocation(null);

}

public void onProviderEnabled(String provider) {

}

public void onStatusChanged(String provider, int status, Bundle extras) {

}

};

private void updateWithNewLocation(Location location) {

String latLongString;

TextView myLocationText;

if (location != null) {

double lat = location.getLatitude();

double lng = location.getLongitude();

latLongString = "纬度:" + lat + "\n经度:" + lng;

} else {

latLongString = "无法获取地理信息";

}

Toast.makeText(SearchXiaoQuActivity.this, latLongString,

Toast.LENGTH_LONG).show();

}

原文:http://my.oschina.net/u/2444750/blog/502489

android定位会出现的问题,Android 定位当前位置可能出现的问题相关推荐

  1. android 强制打开gps定位_Android 6.0 默认关闭定位和GPS,开启后默认选省电

    默认关闭定位和GPS 修改位置 frameworks/base/packages/SettingsProvider/res/values/defaults.xml network,gps 修改为 默认 ...

  2. 相对定位android,appium相对位置定位元素----父节点/兄弟节点定位

    appium相对位置定位元素----父节点/兄弟节点定位 发布时间:2020-06-30 05:51:41 来源:51CTO 阅读:5620 作者:niedongri 讲一下定位手机app上元素时定位 ...

  3. android 获取元素的下标_Appium中定位方式by_android_uiautomator

    在appium定位方式中可以通过by_android_uiautomator方法定位元素. 基本语法:driver.find_element_by_android_uiautomator(" ...

  4. Android 百度地图开发(二)--- 定位功能之MyLocationOverlay,PopupOverlay的使用

    转载请注明出处http://blog.csdn.net/xiaanming/article/details/11380619 这一篇文章主要讲解的是百度地图的定位功能,然后还有MyLocationOv ...

  5. android backtrace,高通android q 通过backtrace使用addr2ine工具定位crash问题记录

    高通android q 通过backtrace使用addr2ine工具定位crash问题记录 高通android q 通过backtrace,使用addr2ine工具,定位crash问题记录 cras ...

  6. Android开发丶基于高德地图实现定位、搜索定位、绘制圆圈自定义图标及改变圆圈半径等功能

    前一段时间接了个需求,进入一个地图界面,可以获取当前位置信息,通过输入位置信息获取位置,绘制圆圈并可以实时改变圆圈半径等功能,地图SDK我们使用的是高德地图,仔细阅读了开发文档,发现这些需求都可以通过 ...

  7. Android中百度地图基础实现,定位

    1登录百度账号 2下载对应sdk 3登陆API控制台申请key-创建应用-配置应用-获取安全码 获取秘钥中: 获得开发版sha1: 打开AndroidStudio的Terminal窗口,进入.andr ...

  8. Android使用高德地图api实现基础定位

    Android使用高德地图api实现基础定位(一) 关于 会获取SHA1的可自行跳过这一步 第二步引用高德sdk 第三步修改MainActivity.java 关于 这篇主要讲如何使用高德sdk(不是 ...

  9. Android studio 百度地图SDK之地图定位与运动轨迹绘制

    百度地图定位与运动轨迹 Android开发的前期准备 地图图层显示与定位 运动轨迹的简单绘制 Android开发的前期准备 Android配置在百度地图SDK官网上有详细的说明.具体可以参考官网的教程 ...

最新文章

  1. 海思芯片固件修改工具_地平线X3开发板开箱、固件刷写、环境配置
  2. mysql dblink 链接mysql库
  3. 《随笔记录》20170310
  4. Python 性能剖分工具
  5. mysql 表设计时的update_time自动更新
  6. boost::function_types::is_callable_builtin用法的测试程序
  7. python在文件中写入字典_python初学--文件操作、字典
  8. python免费课程400节-太原Python编程课哪家比较有优势
  9. mongodb的用法
  10. ASUS AURA无法启动问题
  11. Google地图下载器制作
  12. H5前端的关于像素解释
  13. 冯大辉(@Fenng):信息真正的意义(图灵访谈)
  14. 「松果圆桌派」花式营销能否助力凉茶打好“翻身仗”?
  15. 485终端电阻怎么接?485终端电阻接法解析
  16. 线性代数1.3行列式的按行展开
  17. Scrapy Tutorial
  18. 【pyqt5学习】——窗口最小化至托盘、取消任务栏图标
  19. SVN提交成功,但是版本库里面的内容没有更新--解决方案
  20. Redis框架从入门到学精(全)

热门文章

  1. bp神经网络预测python代码_机器学习之多层神经网络(附Python代码和数据)
  2. 在iphone程序中打开word、execl、pdf等文档
  3. hibernate 出现Could not parse mapping document from resource 报错
  4. 福禄克中国区高管:高精度和应用性是未来测试主要发展方向
  5. centos 使用mutt发送邮件带附件
  6. Exchange 2007 被 SMTP中继***一例
  7. drupal启动过程
  8. 在Android中使用GIF图片
  9. 查看Mysql数据库有多大
  10. 《微软产品开发致胜策略》-5月22日微软CTO峰会主题演讲