如何调用百度地图API实现手机自动定位_Android

最近由于项目需要,研究了下百度地图定位,他们提供的实例基本都是用监听器实现自动定位的。我想实现一种效果:当用户进入UI时,不定位,用户需要定位的时候,自己手动点击按钮,再去定位当前位置。经过2天研究和咨询,找到了解决方案,在此备忘一下。

//声明地址解析器
var geoc = new BMap.Geocoder();

//自动定位
var autoLocation = function () {
  if (navigator.geolocation) { //判断浏览器是否能获取当前位置
    navigator.geolocation.getCurrentPosition(AddrSuc, AddrFail);
  }
  else {
    simpleNoty("无法自动定位,请输入您的用餐地址");
  }
}

//获取当前坐标成功
function AddrSuc(param) {
  var lng = param.coords.longitude;
  var lat = param.coords.latitude;
  var point = new BMap.Point(lng, lat);
  //将gps坐标转换为百度地址坐标
  BMap.Convertor.translate(point, 0, translateCallback);
}

//获取坐标失败
function AddrFail(err) {
  showNotify("自动定位失败");
}

//坐标转换
function translateCallback(point) {

  geoc.getLocation(point, function (rs) {
    var addComp = rs.addressComponents; //查询得到的地址对象组件
    //addComp.streetNumber:街道门牌号
    //addComp.city:城市
    //addComp.district:区
    //addComp.street:街道
    //addComp.province:省
    var address = addComp.city + addComp.district + addComp.street;
    var lng_t = point.lng; //经度
    var lat_t = point.lat;  //纬度 

    $(".locationTxt").text("当前位置:" + address);
  })
}

对象示例:

rs 对象 :{point: H, address: "北京市朝阳区广顺北大街", addressComponents: Object, surroundingPois: Array[0], business: "望京,来广营,花家地"}
addressComponents 对象 :{streetNumber: "", street: "广顺北大街", district: "朝阳区", city: "北京市", province: "北京市"}

调用:

$(function(){
  aotuLocation();
});<br><br>

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索调用百度地图api
js调用百度地图api
百度地图api实现定位、android调用api接口、android 调用webapi、android定位api、android 调用隐藏api,以便于您获取更多的相关知识。

时间: 2024-10-26 17:49:05

如何调用百度地图API实现手机自动定位_Android的相关文章

如何调用百度地图API实现手机自动定位

最近由于项目需要,研究了下百度地图定位,他们提供的实例基本都是用监听器实现自动定位的.我想实现一种效果:当用户进入UI时,不定位,用户需要定位的时候,自己手动点击按钮,再去定位当前位置.经过2天研究和咨询,找到了解决方案,在此备忘一下. //声明地址解析器 var geoc = new BMap.Geocoder(); //自动定位 var autoLocation = function () { if (navigator.geolocation) { //判断浏览器是否能获取当前位置 nav

百度地图api-使用代理服务器调用百度地图API

问题描述 使用代理服务器调用百度地图API private static String ak = ""5ef2641d89438a6e708db122820cf1d2""; public static Map testPost(String x String y) throws IOException { URL url = new URL(""http://api.map.baidu.com/geocoder?"" + ak

api-如何调用百度地图API编写多个经纬度点之间的距离矩阵

问题描述 如何调用百度地图API编写多个经纬度点之间的距离矩阵 调用百度地图API,计算出已知经纬度的地址之间的实际距离,然后计算多个这样的地址之间的距离矩阵 解决方案 http://tieba.baidu.com/p/2105274396 解决方案二: 我记得百度有的,在导航那个里面有的

【百度地图API】手机浏览器抓包工具及其使用方法

原文:[百度地图API]手机浏览器抓包工具及其使用方法 摘要:为了测试地图API在手机浏览器上的性能,需要给手机浏览器设置代理.通过代理,我们可以在PC上获取到抓包数据.进而对性能做进一步分析.   ------------------------------------------------------ 一.手机浏览器抓包工具 Paros 3.2.13   二.如何配置 1.将电脑和手机连到同一个wifi环境中 2.找到电脑的IP 可以点击网卡图标,找到IP信息 也可以在cmd下,使用ipc

sea.js调用百度地图api

问题描述 请问有没有用过sea.js调用百度地图api的? 解决方案 解决方案二:具体什么问题?

【c#】Form调用百度地图api攻略及常见问题

           首先,在Form中调用百度地图api,我们需要使用webbrowser控件,这个在前面的文章中已经讲过了,可以参照(http://blog.csdn.net/buptgshengod/article/details/9617177).         那么接下来就是一些关联性的操作.首先我建议把web的文件放到vs中来进行修改(文件本身以及用到的资源都要存到bin/debug中).如图,这样统一操作更容易实现. 几个关键的问题在这要提一下: 问题一:webbrowser和f

Android 调用百度地图API示例

Android 调用百度地图API 一.到 百度地图开发平台下载SDK http://lbsyun.baidu.com/index.php?title=androidsdk/sdkandev-download 1.点击自定义下载 2.下载自己想要的功能包我这里选了三个 3.获取密钥 获取密钥之前我们要新建一个应用 填写好相关的信息 二. 新建一个项目工程 1. 把下载好的百度sdk中的jar包拷贝到项目的libs目录下 2.在application中添加开发密钥 3.添加所需的权限 <uses-

java调用百度地图API根据地理位置中文获取经纬度

版权声明:本文为博主原创文章,转载注明出处http://blog.csdn.net/u013142781 百度地图api提供了很多地图相关的免费接口,有利于地理位置相关的开发,百度地图api首页:http://developer.baidu.com/map/. 博主使用过根据地理根据地理位置中文获取经纬度的api,下面提供Java调用百度api接口的代码,详情可参考百度地图api相关说明:http://developer.baidu.com/map/index.php?title=webapi/

新人求教webBrowser控件调用百度地图API后很卡

问题描述 想在winform里面插一个webBrowser控件,打开一个本写有百度地图代码的网页文件.但打开了之后,地图的事件都没有,只是显示了整个地图,不能拖动,缩放地图而且鼠标一直在闪因为时间紧迫基础也不好,所以只能用winform来做,希望大神们指点一下!! 解决方案 解决方案二:时间紧迫··基础不好··可貌似winform比网页难呢?这应该由网页做的事为什么要用winform呢?解决方案三:引用1楼z1101385391的回复: 这应该由网页做的事为什么要用winform呢? 有的人推出