今天在Android项目中要实现一个通过GPS或NetWork来获取当前移动终端设备的经纬度功能。要实现该功能要用到Android Framework 中的 LocationManager 类。下面我就直接贴上主要的代码说明如何实现通过GPS或NetWork来获取实时位置的经纬度。

  1. private double latitude=0.0;
  2. private double longitude =0.0;
  3. LocationManager locationManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
  4. if(locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)){
  5. Location location = locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);
  6. if(location != null){
  7. latitude = location.getLatitude();
  8. longitude = location.getLongitude();
  9. }
  10. }else{
  11. LocationListener locationListener = new LocationListener() {
  12. // Provider的状态在可用、暂时不可用和无服务三个状态直接切换时触发此函数
  13. @Override
  14. public void onStatusChanged(String provider, int status, Bundle extras) {
  15. }
  16. // Provider被enable时触发此函数,比如GPS被打开
  17. @Override
  18. public void onProviderEnabled(String provider) {
  19. }
  20. // Provider被disable时触发此函数,比如GPS被关闭
  21. @Override
  22. public void onProviderDisabled(String provider) {
  23. }
  24. //当坐标改变时触发此函数,如果Provider传进相同的坐标,它就不会被触发
  25. @Override
  26. public void onLocationChanged(Location location) {
  27. if (location != null) {
  28. Log.e("Map", "Location changed : Lat: "
  29. + location.getLatitude() + " Lng: "
  30. + location.getLongitude());
  31. }
  32. }
  33. };
  34. locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER,1000, 0,locationListener);
  35. Location location = locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);
  36. if(location != null){
  37. latitude = location.getLatitude(); //经度
  38. longitude = location.getLongitude(); //纬度
  39. }
  40. }

同时别忘了在AndroidManifest.xml文件中加入如下权限:

<!-- 连接互联网Internet权限 -->
    <uses-permission android:name="android.permission.INTERNET" />
    <!-- GPS定位权限 -->
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

说明:本人在真机中测试上述的功能,可以正确获取得了移动终端实时位置的经纬度。

转:http://blog.csdn.net/cjjky/article/details/6557561

Android中通过GPS或NetWork获取当前位置的经纬度的更多相关文章

  1. [原创]Android中LocationManager的简单使用,获取当前位置

    Android中LocationManager的提供了一系列方法来地理位置相关的问题,包括查询上一个已知位置:注册/注销来自某个 LocationProvider的周期性的位置更新:以及注册/注销接近 ...

  2. 在Android Studio中使用BaiduMap SDK实时获取当地位置信息

    配置BaiduMap 环境 1.在百度API中新建自己的一个APP包名和APP名需要注意和自己Android Studio 中的包名和APP名保持一致: 2.百度地图中还需要填写一个SHA1 数字签名 ...

  3. Android中 Bitmap Drawable Paint的获取、转换以及使用

    比如Drawable中有一系列连续的图片,img_0.png, img_1.png, img_2.png ... 如果要动态获取这些图片,通过"R.drawable.img_x"的 ...

  4. js 如何在浏览器中获取当前位置的经纬度

    这个有一定的误差哈,具体的误差是多少,有兴趣的朋友可以去测试下 直接上代码 index.html页面代码: <html> <head lang="en"> ...

  5. android中ScrollView嵌套ListView或GridView显示位置问题

    Android中ScrollView中嵌套ListView或GridView时在开始进入界面时总是显示中间位置,开头的位置显示不出来.这种情况下只需要在ScrollView的父控件中添加以下两行代码即 ...

  6. 可编辑div中包含子元素时获取光标位置不准确的问题

    前言: 高亮显示输入框中的关键字符,这就必须得用到可编辑div(或其他标签)元素了,这时我们需要获取光标的位置,以便插入字符. 正文: 正常情况下获取光标位置,代码如下: function getPo ...

  7. UWP Windows10开发获取设备位置(经纬度)

    1.首先要在UWP项目的Package.appxmanifest文件中配置位置权限,如下图所示: 2.Package.appxmanifest后选择第三个选项卡,勾选位置权限(Location) 打开 ...

  8. Uwp Windows10获取设备位置(经纬度)

    先在Package.appxmanifest中配置位置权限 2. 创建LocationManager类 using System; using System.Collections.Generic; ...

  9. android中加载的html获取的宽高不正确

    wap页面使用 js库是zepto,按照惯例在$(function(){})中,来获取当前可视区的宽高,但得到的宽高却与预想的相差十万八千里. 原本android手机的浏览器设定的宽高基本是360*6 ...

随机推荐

  1. touch event 存疑

    1.原声js与借用jquery输出来的事件列表却不一样 function touchPlay(e) { e.preventDefault(); console.log(e); } var screen ...

  2. C#函数多返回值的方法

    C#以前都是不支持多返回值,当需要返回多个值的时候,就会感觉比较麻烦,通常的做法有 1.采用ref,out 关键字返回 2.定义类或者结构体 返回对象 C# 6.0出来了新的语法 Tuple 支付返回 ...

  3. 剑指Offer 二进制中一的个数

    链接:https://www.nowcoder.com/questionTerminal/8ee967e43c2c4ec193b040ea7fbb10b8 来源:牛客网 public class So ...

  4. luoguP1040 区间DP(记忆化 加分二叉树

    dp[l][r]记录中序序列为l, l+1..r的最大加分值 root[l][r]记录这个序列的根节点 转移 i 为根节点 dp[l][r] = max(dp[l][i-1]*dp[l+1][r]+a ...

  5. 【CF712D】Memory and Scores(概率,DP,前缀和)

    题意:AB两人玩一个游戏,两人玩t轮 每人每次随机且等概率从[-k,k]中取一个数字加到总得分中 得分高者赢 已知A B初始分别有a b分,问A取得胜利的概率是多少 (1 ≤ a, b ≤ 100,  ...

  6. ibatis 字段类型为int时如何避免默认值得干扰

    在xml文件中配置查询语句时,通常都是采用以下方法: <select id="getByExample" resultMap="PgWtResult" p ...

  7. phthon入门介绍

    1.基本的python语法 2.python爬虫 3.基本的数据分析 4.做网站 5.做机器学习 1.python简介: Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节.类似于 ...

  8. [原创][SW]一些实用软件的小tips(长期更新)

    0. 简介 生活中我们经常使用许多的小工具或软件,来提高我们的工作效率,比如UltraEdit.Notepad++等.本文主要做一些记录,目的呢就是防止自己遗忘或者是快速的查询,来源是自己的摸索和网络 ...

  9. 洛谷—— P2251 质量检测

    https://www.luogu.org/problemnew/show/P2251 题目背景 无 题目描述 为了检测生产流水线上总共N件产品的质量,我们首先给每一件产品打一个分数A表示其品质,然后 ...

  10. k8s之pod控制器

    1.生产中,很少会跑一个自主式pod,一般由控制器去创建pod,其配置文件中内嵌了pod的创建方式. pod控制器:ReplicaSet.Deployment.DaemonSet.Job.Cronjo ...