基于Android的百度地图实现输入地址返回经纬度信息
1 解决方案一
此处解决办法参照自网友文章,对于输入的地址信息要求:城市名+具体地址名。
如果输入的地址信息只有具体地址名,而没有城市名,可能解析不出经纬度信息。还有就是解析出的经纬度再反向解析显示再地图上作为一个地标标记时,会有较明显的偏差,偏差的实际地理距离大概有一千米左右...,这是楼主自己实际上机运行检测的结果,不能完全肯定情况是否是这样,还有一点就是如果解析时可能会使应用出现闪退。我试验的结果,会闪退一次,第二次重新点开应用,才会出现正确的解析结果。
最后,说一下解析的经纬度坐标,最终的数字结果均要除以10的六次方(即1e6),要不然进行反向解析为地标时会报错。还有就是,如果在监听方法中同时解析多个地址,可能会一直闪退。所以,以下代码仅供参考。
具体实现方法:
public GeoPoint getGeoPointBystr(String str) {
GeoPoint gpGeoPoint = null;
if (str!=null) {
Geocoder gc = new Geocoder(getActivity(), Locale.CHINA);
List<Address> addressList = null;
try {
addressList = gc.getFromLocationName(str, 1);
if (!addressList.isEmpty()) {
Address address_temp = addressList.get(0);
//计算经纬度
double Latitude=address_temp.getLatitude()*1E6;
double Longitude=address_temp.getLongitude()*1E6;
System.out.println("经度:"+Latitude);
System.out.println("纬度:"+Longitude);
//生产GeoPoint
gpGeoPoint = new GeoPoint((int)Latitude, (int)Longitude);
}
} catch (IOException e) {
e.printStackTrace();
}
}
return gpGeoPoint;
}
调用上述方法解析出经纬度:
GeoPoint result = getGeoPointBystr("武汉市中南民族大学南三门");
Double num_latitude = (result.getLatitudeE6()) / 1e6;
Double num_longitude = (result.getLongitudeE6()) / 1e6;
基于Android的百度地图实现输入地址返回经纬度信息的更多相关文章
- 百度地图API 根据地址查询经纬度
html页面.引用上API: <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title> ...
- 百度地图api根据地址获取经纬度
package com.haiyisoft.cAssistant;import java.io.BufferedReader;import java.io.IOException; import ja ...
- 利用百度地图API根据地址查询经纬度
传上来只是为了记录下三种jsonp方式,$.get(url, callback)方式不行,会出错 -- 必须指明返回类型为”json”才行. 或者使用$.getJSON()或者$.ajax({}). ...
- 利用百度地图API实现地址和经纬度互换查询
import json import requests def baiduMap(input_para): headers = { 'User-Agent': 'Mozilla/5.0 (Window ...
- Xamarin.Android 集成百度地图SDK
前言:趁着周六闲得没事干,赶紧搞一搞Xamarin,最近也是怪无聊的,枯燥的生活不如打几行代码带劲:好了我们进入正题 我这篇文章时参考一位大佬的博客进行改变的,当然他写的需要一定的经验才可以看得懂,我 ...
- 百度地图api通过地址显示地图,白名单
百度地图api通过地址显示地图,白名单 http://developer.baidu.com/map/jsdemo.htm#i7_1?qq-pf-to=pcqq.c2c---------------- ...
- Android studio百度地图demo出现230错误,key校验失败
转自daoxiaomianzi原文 Android studio 百度地图demo出现230错误,key校验失败 使用AndroidStudio导入Baidu地图的as版的demo,引入后,发现没有k ...
- Android studio 百度地图开发(2)地图定位
Android studio 百度地图开发(2)地图定位 email:chentravelling@163.com 开发环境:win7 64位,Android Studio,请注意是Android S ...
- Android使用百度地图出现闪退及定位时显示蓝屏问题
目录 1.Android使用百度地图出现闪退 2.Android使用百度地图定位出现蓝屏问题 1.Android使用百度地图出现闪退 一般情况下出现闪退是在AndroidManifest.x ...
随机推荐
- WordPress主题开发:get_term_by和get_term_link
学习目的: 某一个分类的名称.别名.和id都可以到后台自己去找,但这样找比较麻烦还容易看错,wordpress提供了下面两个函数get_term_by和get_term_link,只要提供别名.名称或 ...
- Linux下Tomcat的启动、关闭
在Linux系统下,启动和关闭Tomcat使用命令操作. 进入Tomcat下的bin目录 1 cd /java/tomcat/bin 启动Tomcat命令 1 ./startup.sh 停止Tomca ...
- ASP.NET MVC:mvc pattern
There are three pieces to the MVC pattern: The model—The domain that your software is built around. ...
- BaseControl按钮合集
BaseControl按钮合集 效果 源码 https://github.com/YouXianMing/Animations // // POPBaseControl.h // Animations ...
- 通过图形化工具来画shape
前两天一个哥们分享了十分好用的图形化工具,这样我们就能实时的看到自己用代码写出来的shape是怎么样的了,更牛的是它可以让我们自己去设定值,最后生成代码,这样我们为什么要去自己写shape呢?如果一个 ...
- Gradle 简介
一.简介 Gradle 是 Android 现在主流的编译工具,虽然在Gradle 出现之前和之后都有对应更快的编译工具出现,但是 Gradle 的优势就在于它是亲儿子,Gradle 确实比较慢,这和 ...
- EntityFramework6 快速入门教程【转】
https://www.cnblogs.com/wujingtao/p/5401113.html 不得不说EF在国内实在是太小众,相关的技术文章真实屈指可数,而且很多文章都很旧了,里面使用的版本跟如今 ...
- [leetcode]ZigZag Conversion @ Python
原题地址:https://oj.leetcode.com/problems/zigzag-conversion/ 题意: The string "PAYPALISHIRING" i ...
- Neo4j资料 Neo4j教程 Neo4j视频教程 Neo4j 图数据库视频教程
课程发布地址 地址: 腾讯课堂<Neo4j 图数据库视频教程> https://ke.qq.com/course/327374?tuin=442d3e14 作者 庞国明,<Neo4j ...
- CentOS中zip压缩和unzip解压缩命令详解
以下命令均在/home目录下操作cd /home #进入/home目录1.把/home目录下面的mydata目录压缩为mydata.zipzip -r mydata.zip mydata #压缩myd ...