Android Geocoder(位置解析)

2023-10-30

Android中提供GPS定位服务,同时开发者可以对获得的位置信息进行解析,可以获得位置的详细信息。

1.gps定位

在Eclipse中建立android应用程序。android sdk中提供了locationmanager来获得系统提供的定位服务,可以通过gps、network等定位。通过下面的代码能够获取location对象,而通过location可以获得经纬度信息。

 1 LocationManager loactionmanager=(LocationManager) getSystemService(Context.LOCATION_SERVICE);
 2         tv_msg=(TextView)findViewById(R.id.textView1);
 3         Criteria criteria=new Criteria();
 4         criteria.setAccuracy(Criteria.ACCURACY_FINE);
 5         criteria.setAltitudeRequired(false);
 6         criteria.setBearingRequired(false);
 7         criteria.setCostAllowed(false);
 8         criteria.setPowerRequirement(Criteria.POWER_LOW);
 9         String provider=loactionmanager.getBestProvider(criteria, true);
10         Location location=loactionmanager.getLastKnownLocation(provider);

通过Criteria为对象指定一些参数。criteria提供若干方法:

(1)public void setAccuracy(int accuracy)

位置解析的精度。Criteria.Accuracy_Fine 精确模式,Criteria.Accuracy_Coarse 模糊模式。

(2)public void setAltitudeRequired(boolean altitude)

是否提供海拔高度信息

(3)public void setBearingRequired(boolean)

是否提供方向信息

(4)public void setPowerRequirement(int level)

电池消耗,无、低、中、高,参数 Criteria. NO_REQUIREMENT, Criteria. POWER_LOW, Criteria.POWER_MEDIUM, or Criteria. POWER_HIGH

(5) public void setCostAllowed(boolean)

是否允许运行商计费。

2.gps位置解析

以前进行位置解析的时候,有人通过访问Google提供的服务进行位置解析,那样真的比较耗时,对于手机用户来说,体验真的很重要,今天无意中看见可以通过别的方法来进行位置的解析。android sdk 中提供了 Geocoder类来进行位置的解析。通过geocoder的getFromLocation(double lattitude,double longtitude,int maxresults)来获取地址列表,三个参数分别为:纬度、经度、返回的结果数。同时geocoder的getlocationfrom方法是同步的,因此,它们进行查找时将会阻碍线程,所以不应该放入UI线程,应该放入后台,也就是通过异步线程来实现。

 1 public class GeocodeAddress extends AsyncTask
 2     {
 3         
 4         @Override
 5         protected void onPreExecute() {
 6             // TODO Auto-generated method stub
 7             super.onPreExecute();
 8         }
 9         @Override
10         protected String doInBackground(Location... params) {
11             // TODO Auto-generated method stub
12             if(params[0]!=null)
13             {
14                 Geocoder geocoder=new Geocoder(MainActivity.this);
15                 try {
16                     List

这里的geoceAddress 是继承asynctask异步类,参数分别为:location,传进来的参数类型;Void,异步线程处理的进度,String,返回的结果类型。

doInBackground(Params) :用来处理比较耗时的操作,返回结果

onPostExecute:获取处理的结果,并可以进行ui的更新。

onProgressUpdate:数据处理的进度

3.位置反向解析

位置反向解析,是指通过位置信息获取经纬度地址。

List

Copy

参数:locationname:位置的名称信息,如南京大学,北京大学等。

maxresults:返回的结果数。从1到5.

double lattitude=geoaddress.get(0).getLatitude(); //获取纬度

double longtitude=geoaddress.get(0).getLongitude(); //获取经度

更多详细,请参照androidsdk文档。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android Geocoder(位置解析) 的相关文章

  • Hazelcast 分布式锁与 iMap

    我们目前使用 Hazelcast 3 1 5 我有一个简单的分布式锁定机制 应该可以跨多个 JVM 节点提供线程安全性 代码非常简单 private static HazelcastInstance hInst getHazelcastIn
  • hibernate锁等待超时超时;

    我正在使用 Hibernate 尝试模拟对数据库中同一行的 2 个并发更新 编辑 我将 em1 getTransaction commit 移至 em1 flush 之后我没有收到任何 StaleObjectException 两个事务已成
  • 在 Netbeans 8 上配置 JBoss EAP 的问题

    我已经下载了 JBoss EAP 7 并正在 Netbeans 8 上配置它 我已经到达向导 实例属性 其中要求从选择框中选择 域 当我打开选择框时 它是空的 没有什么可以选择的 因此 完成 按钮也处于非活动状态 这使得无法完成配置 我通过
  • 具有 java XSLT 扩展的数组

    我正在尝试使用 java 在 XSLT 扩展中使用数组 我收到以下错误 Caused by java lang ClassCastException org apache xpath objects XObject cannot be ca
  • 普罗米修斯指标 - 未找到

    我有 Spring Boot 应用程序 并且正在使用 vertx 我想监控服务和 jvm 为此我选择了 Prometheus 这是我的监控配置类 Configuration public class MonitoringConfig Bea
  • 以编程方式在java的resources/source文件夹中创建文件?

    我有两个资源文件夹 src 这是我的 java 文件 资源 这是我的资源文件 图像 properties 组织在文件夹 包 中 有没有办法以编程方式在该资源文件夹中添加另一个 properties 文件 我尝试过这样的事情 public s
  • HERE 地图:更改路线已行驶部分的颜色

    导航时可以改变路线的颜色吗 具体来说 我希望路线中已行驶的部分的颜色与即将行驶的部分的颜色不同 现在都是同一个颜色 将 MapRoute 对象的 TravelColor 变量设置为透明对我来说很有效 mapRoute color Resou
  • 编辑文件名在 JComboBox 中的显示方式,同时保持对文件的访问

    我对 Java 很陌生 对堆栈溢出也很陌生 我正在尝试利用 JMF API 创建一个用 Java 编码的简单媒体播放器 到目前为止 我已经能够设置一个简单的队列 播放列表来使用JComboBox called playListHolder
  • 如何修改 Skobbler 注释而不重新添加它

    我必须修改 SKAnnotation 的图像 注释生成器代码 private SKAnnotation getAnnotationFromView int id int minZoomLvl View view SKAnnotation a
  • 如何在android asynctask中使用inputstream作为参数?

    我正在制作一个 Android 应用程序来跟踪股票详细信息 我将通过 csv 雅虎财经 检索数据 据我所知 在android 4 0中 网络连接无法在主线程上完成 因此 我将使用 asynctask 来建立连接 但是 我在参数方面遇到了一些
  • 游戏内的java.awt.Robot?

    我正在尝试使用下面的代码来模拟击键 当我打开记事本时 它工作正常 但当我打开我想使用它的游戏时 它没有执行任何操作 所以按键似乎不起作用 我尝试模拟鼠标移动和点击 这些动作确实有效 有谁知道如何解决这个问题 我发现这个问题 如何在游戏中使用
  • Android:监听状态栏通知

    有没有办法在状态栏被下拉时监听通知 1 用于检测状态栏变化 您可以注册一个监听器来获取系统UI可见性变化的通知 因此 要在您的活动中注册侦听器 Detecting if the user swipe from the top down to
  • Android 中循环事件的星期几和时间选择器

    我想创建一个控件 允许用户在我的 Android 活动中选择一周中的某一天 星期一 和一天中的某个时间 下午 1 00 找不到任何关于此的好帖子 好吧 我想我已经明白了 我只是不喜欢这个解决方案 因为我在一周中的某一天使用的微调器与时间选择
  • 为什么这个作业不起作用?

    我有课Results which extends ArrayList
  • 获取其他指针的MotionEvent.getRawX/getRawY

    我可以获取其他指针的MotionEvent getRawX getRawY 值吗 MotionEvent getRawX API 参考 http developer android com reference android view Mo
  • 尝试将 SQLite DB 从数据复制到 SD 卡

    我正在使用以下代码 该代码发布在 Stack Overflow 上的某个位置 并根据我的目的进行了修改 try File sd Environment getExternalStorageDirectory File data Enviro
  • 使用单选按钮更改背景颜色 Android

    我试图通过从单选组中选择单选按钮来更改应用程序选项卡的背景 但是我不确定如何执行此操作 到目前为止我已经 收藏夹 java import android app Activity import android os Bundle publi
  • ServletContainer 类未找到异常

    我无法再编译我的球衣项目 并且出现以下异常 GRAVE Servlet Project API threw load exception java lang ClassNotFoundException com sun jersey spi
  • 如何在片段中实现 onBackPressed() 和意图?

    我知道 onBackPressed 是活动中的一种方法 但是 我想在片段中使用该功能 以便当按下后退按钮时 它会通过 Intent 重定向到另一个活动 有什么办法解决这个问题吗 public class News Events fragme
  • 调整添加的绘制组件的大小和奇怪的摆动行为

    这个问题困扰了我好几天 我正在制作一个特殊的绘画程序 我制作了一个 JPanel 并添加了使用 Paint 方法绘制的自定义 jComponent 问题是 每当我调整窗口大小时 所有添加的组件都会 消失 或者只是不绘制 因此我最终会得到一个

随机推荐

  • GitLab的Webhook配置和开发

    文章目录 前提准备 企业微信消息发送接口 gitlab 账号 用户组 项目 gitlab开放API文档 webhook配置和开发 配置webhook gitlab的webhook原理 项目实战 总结 本文主要介绍如何使用gitlab的web
  • win10、11 中“windbg+vmware+win7双机调试”设置

    0x00 目的 搭建windows内核调试环境 基于windbg vmware搭建双机调试环境 windbg安装在物理windows操作系统上 vmware内安装win7 32位操作系统 如果windbg可以对vmware内的虚拟机进行断点
  • 测试体质的软件有哪些,有哪些APP可以测体脂?测体脂率APP分享

    在现代生活中 有越来越多的用户都非常注重自己的身体健康 所以有越来越多的人都在减肥都在健身 希望可以保持自己的身材 那么如何才可以避免过度的减肥呢 如何才算达到一个正常的体重呢 体脂可以说是非常重要了 那么有哪些APP可以帮助我们测体脂呢
  • 使用python求两个矩阵的余弦距离

    文章目录 求两个矩阵的余弦距离 导入必要的库 第一种思路 第二种思路 求两个矩阵的余弦距离 余弦距离可适应用于人脸识别 将待识别人脸的图像提取特征 与人脸注册库的所有图像的特征矩阵求距离 然后找到最相似的 本文提供两种思路三种编程方法 导入
  • 最全大数据学习资源整理

    关系数据库管理系统 RDBMS MySQL 世界最流行的开源数据库 PostgreSQL 世界最先进的开源数据库 Oracle 数据库 对象 关系型数据库管理系统 框架 Apache Hadoop 分布式处理架构 结合了 MapReduce
  • python发送邮件附件中文名乱码_Python发送邮件解决各客户端乱码问题

    最近有一个项目需要每天以发送邮件的形式通知客户 爬虫工作情况 今日违规 爬取数量等信息 小编心里想 手动发送吧 多累 索性写了个代码去做这个工作 结果发现发送到不同的邮箱就会出现乱码的情况 对于同一个邮箱 而客户端和网页端也会出现乱码 经过
  • 陀螺专访

    3月30日 新浪与五粮液两大集团宣布联袂发布 五粮液数字酒证 并于 臻久网 正式开启预约 五粮液 区块链意味着什么 数字酒证要如何购买交易 酒证与传统实物酒有哪些差异 带着这些疑问 陀螺财经特别采访到臻久网CEO庞剑飞 与他一起探讨了那些关
  • mysql备份数据库以及拷贝数据库到另一台服务器上

    项目要结束了 至少开发要结束了 回头看看自己就这么一个人埋头开发了4个月 以及手上拿到的与自己付出完全不成正比的微薄工资 觉得自己真tmd的悲剧 或许这就是应届毕业生的命吧 恩 现在我已经不是应届毕业生了 现在项目做完了 我也尽到了善始善终
  • android otg主从切换,一种自动切换OTG设备主从模式下的Vbus电压的方法与电路与流程...

    本发明涉及otg设备的检测领域 更具体地说 涉及一种自动切换otg设备主从模式下的vbus电压的方法与电路 背景技术 现有技术中 具备otg功能的设备通过检测usb id引脚的状态来判断工作为host 主模式 usb id悬空 或者devi
  • 游戏开发各组件介绍

    控件control 控件是任何可以被看到 动画化和 或以某种方式交互的对象 控件是用户界面的基本构建块 示例包括精灵图像 按钮 标签等 视图view 视图是控件和动画的集合 表示用户界面中的逻辑 屏幕 视图的一个例子是应用程序中的主菜单或闪
  • 《信号与系统》解读 第1章 信号与系统概述-5:非常重要!!!深入、详细地解读什么基本的复指数信号、IQ信号、欧拉公式?

    前言 正弦信号与复指数信号 更准确称为虚指数信号 是现代移动通信系统中最基本的信号 其中正弦信号常是射频调制的载波信号 而虚指数信号 包含了两路同频的正交正弦与余弦信号 常用于现代通信基带数字调制 因此理解正弦信号和复指数信号 是深入理解现
  • 计算机基础:原码补码反码计算

    结论 1 正数的原码 反码 补码 2 负数的反码 在其原码的基础上 符号位不变 其余各个位取反 负数的补码 在反码的基础上 1 负数的补码 在原码的基础上 符号位不变 其余各位取反 最后末位 13 0 在计算机种分 0与 0 它们的原码 补
  • electron-updater更新遇到的问题 The URL protocol of the current origin (‘app://.‘) is not supported

    目前的Vue脚手架 我使用的是vue cli4 默认会携带一个 registerServiceWorker的东西 这个东西是做什么的呢 首先说明 registerServiceWorker可以运用于主流框架 它只是为了简化缓存机制产生的js
  • 大学生团体天梯赛(第十届)

    题目地址 天梯赛 include
  • pppd详解_pppd拨号脚本说明文档

    加入调试信息 nodetach ipcp accept local ipcp accept remote usepeerdns 使用服务器端协商的 DNS defaultroute 使用默认线路 user card 电信 card 移动 c
  • 【ShaderToy】基础篇之谈谈点、线的绘制

    写在前面 写前面一篇的时候 发现还是不够基础 因此打算增加几篇基础篇 从点线面开始 希望可以更好理解 其实用Pixel Shader的过程很像在纸上绘画的过程 屏幕上的每一个像素对应了纸上的一个方格 如果你愿意 你甚至可以一个个判断像素的位
  • JS实现数组随机读取思路,js数组随机思路分析

    需要了解的 Math 对象方法 方法 描述 ceil x 对数进行上舍入 即向上取整 floor x 对 x 进行下舍入 即向下取整 round x 四舍五入 random 返回 0 1 之间的随机数 包含 0 不包含 1 一些实例说明 M
  • matlab函数库-optimset,非线性优化-matlab函数库-optimset

    创建或编辑一个最优化参数选项 句法规则 options optimset param1 value1 param2 value2 设置所有参数及其值 未设置的为默认值 options optimset optimfun 设置与最优化函数有关
  • layui左侧三级菜单2.0

    之前在layui 1 0的时候写过一个三级菜单 那时候用三级菜单还要自己扩展 与后台交互也显得麻烦 现在新版本的layui自动就可以实现三级菜单了 很多朋友在问 我就帮大家整理了一下样式大家可以改改 直接上代码 ul class layui
  • Android Geocoder(位置解析)

    Android中提供GPS定位服务 同时开发者可以对获得的位置信息进行解析 可以获得位置的详细信息 1 gps定位 在Eclipse中建立android应用程序 android sdk中提供了locationmanager来获得系统提供的定