js百度地图android定位不准,百度地图js定位不准
浏览器H5定位即navigator.geolocation,通过IP或者域名的形式,如:http://172.21.3.82:8080 和http://b.cunzhang.com进行访问时,调用navigator.geolocation.getCurrentPosition,打开控制台,你会发现有以下错误信息:
Only secure origins are allowed (see: https://goo.gl/Y0ZkNV).
“只有在安全来源的情况才才被允许”。错误信息里还包含了一个提示链接,我们不妨打开这个
链接https://goo.gl/Y0ZkNV)看看。原来,为了保障用户的安全,Chrome浏览器认为只有安全的
来源才能开启定位服务。那什么样才算是安全的来源呢?在打开链接的页面上有这么一段话:
“Secure origins” are origins that match at least one of the following (scheme, host, port) patterns:(https, *, *)
(wss, *, *)
(*, localhost, *)
(*, 127/8, *)
(*, ::1/128, *)
(file, *, —)
(chrome-extension, *, —)
This list may be incomplete, and may need to be changed. Please discuss!
大概意思是说只有包含上述列表中的scheme、host或者port才会被认为是安全的来源,现在这个列表还不够完整,后续可能还会有变动,有待讨论。
如果需要在域名访问的基础上实现地位位置的定位,那我们只能把http协议升级为https了。
html>
body, html, #allmap {
width: 100%;
height: 100%;
overflow: hidden;
margin: 0;
font-family: "微软雅黑";
}
地图展示
// 百度地图API功能
var map = new BMap.Map("allmap"); // 创建Map实例
var point = new BMap.Point(116.331398, 39.897445);
map.centerAndZoom(point, 30);
map.enableScrollWheelZoom(true); //开启鼠标滚轮缩放
//添加地图类型控件
map.setCurrentCity("北京");
var geolocation = new BMap.Geolocation();
geolocation.getCurrentPosition(function (r) {
if (this.getStatus() == BMAP_STATUS_SUCCESS) {
var mk = new BMap.Marker(r.point);
map.addOverlay(mk);
map.panTo(r.point);
point = r.point;
console.log(r.point.lng + ',' + r.point.lat);
alert('您的位置:' + r.point.lng + ',' + r.point.lat);
getName(point);
}
else {
alert('failed' + this.getStatus());
}
}, { enableHighAccuracy: true })
function callback(data) {
console.log(data);
console.log('转化后:'+data.points[0].lng + ',' + data.points[0].lat);
alert('您的真实位置:' + data.points[0].lng + ',' + data.points[0].lat);
var newpoint = new BMap.Point(data.points[0].lng, data.points[0].lat);
var mk = new BMap.Marker(newpoint);
map.addOverlay(mk);
map.panTo(newpoint);
getName(newpoint);
}
function getName(point) {
var geoc = new BMap.Geocoder();
geoc.getLocation(point, function (rs) {
var addComp = rs.addressComponents;
console.log(addComp);
alert(addComp.province + ", " + addComp.city + ", " +
addComp.district + ", " + addComp.street + ", " + addComp.streetNumber);
});
}
//浏览器H5定位
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(function (position) {
//得到html5定位结果
var x = position.coords.longitude;
var y = position.coords.latitude;
console.log(position.coords);
alert('您的位置:' + x + ',' + y);
//由于html5定位的结果是国际标准gps,所以需要转为百度坐标系,from=1,
to=5
var newpoint = new BMap.Point(x, y);
var convertor = new BMap.Convertor();
var pointArr = [];
pointArr.push(newpoint);
convertor.translate(pointArr, 1, 5, callback)
}, function (e) {
console.log(e);
alert(e.message);
})
} else {
alert("没有定位权限");
}
在https站点下,通过对比我们发现百度api获取的坐标和浏览器H5经过坐标转换获得的坐标是一致的。所以要想在浏览器中通过百度api获取精确的定位,最好把站点升级为https协议。
js百度地图android定位不准,百度地图js定位不准相关推荐
- android应用 百度地图,Android学习之百度地图API的应用(一)
现在的地图API很多,我就从百度地图开始了,为了方面自己以后回顾,我会把所有学到的东西记录下来,下面是学习记录: 要使用百度地图首先得申请一个KEY,可以到这里申请(需要注册一个百度账号),申请完之后 ...
- 百度地图 android 圈区域,百度地图自定义选取区域(二)
选取区域之后,jsAPI提供了一个GeoUtils类来进行判断. html> 行政区域工具 var map = new BMap.Map("container");// 创建 ...
- 简单Android手机APP地图,android最简单手机地图APP(只需5分钟)
android最简单手机地图APP--只有三部分. 第一部分 首先建立一个MapActivity在setContentView(R.layout.activity_map);中创建一个代码如下. [h ...
- 百度输入法android+4.8,百度输入法Android v7.6来了 翻译功能上线助力跨国沟通
本帖最后由 百度输入法小助手 于 2017-8-8 17:50 编辑 随着世界越来越小,各个领域的跨语言交流也愈渐频繁,为了让大家可以更好地与世界各地的人交流.对话,百度输入法Android v7.6 ...
- android 百度输入法,Android系统预置百度输入法
文档说明 本文档以SC806-CN-00为例(msm8909平台,Android 5.1),说明如何预置百度输入法APK,且设置为系统默认输入法. 预置百度输入法APK 先去百度网站下载一个百度输入法 ...
- android应用控制百度地图,Android中应用百度地图API开发地图APP实例-显示百度地图...
场景 效果 在使用百度地图API之前需要先在百度地图开放平台中申请API_KEY 申请API_KEY 登录百度开放平台后找到控制台下的应用管理-创建应用 依次输入应用名,应用类型选择Android S ...
- 百度地图android HD版,百度地图HD版
应用介绍 在这里你无需担心自己会走丢,因为有它,百度地图HD版是款非常不错的导航地图,快速定位你的位置,探索周边美食娱乐. 不但可以找位置,还能帮你"到那去",公交.驾车.步行三种 ...
- 百度地图android绘图类,百度地图绘制点、图形
目标: 1,指定经纬度,显示一个图片,点击图片能显示相应的介绍信息 2,当前屏幕把所有指定的坐标点都显示出来 预览效果:添加了四个点,红色定位图片表示出来 实现 准备条件: 配置百度地图,只要能fin ...
- 百度地图android HD版,百度地图hd版Android版
百度地图hd版为用户提供一个专业的生活服务软件,专业智能的导航功能,简单方便的操作方法,以及功能多样的生活服务平台,给用户的生活带来无限的便利. 百度地图hd版特色: [最高清卫星图] 支持手势操作, ...
- 腾讯地图android,手机腾讯地图
手机腾讯地图使用帮助 - 安装 1.安装手机腾讯地图软件需要占用多大的存储空间?最好安装在手机上还是安装在存储卡上? 程序安装包会占用大约3MB的存储空间:手机腾讯地图单个城市的数据包大小平均在3M左 ...
最新文章
- sdk没有登录什么意思_不需要接入SDK的第三方登录及分享
- WORD 排版十技巧
- WebX Qamp;A
- 打开word或者office程序报错:Microsoft Visual C++ Runtime Library. Runtime Error!
- php比较float大小,PHP中两个float(浮点数)比较实例分析
- Android listview 中嵌套 listview
- SRM 588 D2 L2:GUMIAndSongsDiv2,冷静思考,好的算法简洁明了
- C#属性的声明和使用演示源码片段
- 学python编程_程序员学Python编程或许不知的十大提升工具
- DaSiamRPN、SiamRPN++论文阅读
- 利用FILTER特性优化SQL
- A survey of network-based intrusion detection data sets翻译二(5-8)
- rand()用法总结及注意事项
- linux常用命令(2)关机重启 文本编辑器 系统管理 软件安装
- python plc fx5u_FX5U系列三菱PLC型号选型一览表
- android 设置iptv vlan tag的命令,IPTV+VLAN设置教程
- 聊新款Macbook pro
- 解决mac BigSur外接显示器发白、发黄、字体发虚 (OpenCore关闭SIP和Read-Only System)
- Java + Swing + MySQL实现图书管理系统
- 猿创征文|国产数据库[StarRocks]实战学习
热门文章
- 函数运行环境系统动态链接库版本太低?函数计算 fun 神助力分忧解难
- 赠书 | IoT 的真正目标是什么
- AI赋能红外测温助力精准防控疫情……
- 2020年进军 AI,想年薪 40 万,没这个能力不行
- 360深度实践:Flink与Storm协议级对比
- Gartner的预言:通向混合IT之旅
- 8 年后重登王座,Python 再度成为 TIOBE 年度编程语言
- AI 崛起,科学家的天下,程序员的谢幕
- file_get_contents请求失败处理_SpringCloud Gateway网关处理请求过程中遇到400Bad Request问题解决方案...
- python pandas csv getitem_Python调用pandas 读csv档时出现了错误