微信获取到的经纬度坐标不精准的问题

(转自:风行天下 http://www.cnblogs.com/php-linux/p/4730744.html)

微信如何根据经纬度坐标查询具体地理位置

好多人会问为什么微信高级接口获取的坐标信息位置不准,主要原因不是微信获取的不准,而是微信获取的是gps坐标,如果你直接用百度或google的api去解析的话肯定会出现误差的。

首先你需要吧gps位置转换成google或者百度的坐标,然后在通过转换后的坐标去获取准确的地理位置。

方法一:gps转换成google或者百度坐标,转换gps的接口 http://map.yanue.net/gps.html

方法二:gps转换成百度坐标

function getgps($lats,$lngs, $gps=false, $google=false)//gpg 转百度坐标
{
    $lat=$lats;
    $lng=$lngs;
    if($gps)
        $c=file_get_contents("http://api.map.baidu.com/ag/coord/convert?from=0&to=4&x=$lng&y=$lat");
    else if($google)
        $c=file_get_contents("http://api.map.baidu.com/ag/coord/convert?from=2&to=4&x=$lng&y=$lat");
    else 
    return array($lat,$lng);
    $arr=(array)json_decode($c);
    if(!$arr[‘error‘])
    {
        $lat=base64_decode($arr[‘y‘]);
        $lng=base64_decode($arr[‘x‘]);
    }
    return array($lat,$lng);
}

下面是通过百度坐标获取地理位置信息

返回josn格式的:

http://api.map.baidu.com/geocoder/v2/?ak=E4805d16520de693a3fe707cdc962045&callback=renderReverse&location=39.983424,116.322987&output=json&pois=1

返回xml格式的:

http://api.map.baidu.com/geocoder/v2/?ak=E4805d16520de693a3fe707cdc962045&callback=renderReverse&location=39.983424,116.322987&output=xml&pois=1

下面是google的api获取的地址

时间: 2024-10-29 19:10:39

微信获取到的经纬度坐标不精准的问题的相关文章

HTML5获取当前的经纬度坐标

使用IE10可以查看出结果:chrome和ff都没有正确显示: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>jingweidu</title> <script> window.addEventListener('load', function() { if (navigator.geolo

微信如何根据经纬度坐标查询具体地理位置

微信如何根据经纬度坐标查询具体地理位置 好多人会问为什么微信高级接口获取的坐标信息位置不准,主要原因不是微信获取的不准,而是微信获取的是gps坐标,如果你直接用百度或google的api去解析的话肯定会出现误差的. 首先你需要吧gps位置转换成google或者百度的坐标,然后在通过转换后的坐标去获取准确的地理位置. 方法一:gps转换成google或者百度坐标,转换gps的接口 http://map.yanue.net/gps.html 方法二:gps转换成百度坐标 function getgp

发送经纬度坐标给指定手机

public class LocationService extends Service { @Override public void onCreate() { super.onCreate(); //获取手机的经纬度坐标 //1,获取位置管理者对象 LocationManager lm = (LocationManager) getSystemService(LOCATION_SERVICE); //2,以最优的方式获取经纬度坐标() Criteria criteria = new Crit

利用百度地图API,获取经纬度坐标

利用百度地图API,获取经纬度坐标 代码很简单,但在网上没找到现成的获取地图经纬度的页面. 就是想,给当前页面传递一个经纬度,自动定位到此经纬度.然后可以重新选择,选择完返回经纬度. 效果如下: 源代码下载:http://files.cnblogs.com/zjfree/select_map.rar 利用百度地图API,获取经纬度坐标,布布扣,bubuko.com

微信lbs---返回两个经纬度坐标点的距离

微信开发:lbs附近的商家,在数据库里记录商家的坐标,lbs设置里管理搜索半径,查询的时候,查询 客户当前坐标的半径内的所有商家列表.个人喜欢不一样,我选择了执行sql ,毕竟效果高点.微信开发必须得将就效率问题.不然等半天出不来,急死人,半天出不来结果,客户直接走人.不多说,直接上代码 \\返回两个经纬度坐标点的距离(单位:米) \\C#  方法 ///<summary>返回两个经纬度坐标点的距离(单位:米) by Alex.Y</summary>         ///<

根据经纬度坐标获取对应的切片算法

根据经纬度坐标获取对应的切片算法,含天地图.谷歌等. Javascript: 1 function getPoints2() 2 { 3 var topTileFromX = -180; 4 var topTileFromY = 90; 5 6 var tdtScale={18:5.36441802978515E-06,17:1.07288360595703E-05,16:2.1457672119140625E-05,15:4.29153442382814E-05,14:8.5830688476

百度地图多边形画区域、获取节点经纬度坐标、判断某一点是否在此区域内

创建可绘画map: 1 <!DOCTYPE html> 2 3 <html> 4 <head> 5 <meta charset="UTF-8"> 6 <meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1, user-scalable=no"> 7 <meta name=&

微信获取用户地理位置,查找出附近所有商家

微信获取用户地理位置,官网上文档不太完善,还是附上 微信获取用户地理位置开发文档地址:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp142114084 总的来说分为两大部分 1,生成JS-SDK权限验证签名 2,使用地理位置接口获取坐标 完整类文件代码如下: <?php class JSSDK { private $appId; private $appSecret; public function __construct($a

H5、微信 获取用户当前位置信息

在之前的 调用百度地图API的总结 中获取当前位置信息我用的是 H5 ,其实微信也提供了获取用户地理位置的方法,现将这两种方法都贴出来,看情况选择使用. 一.H5 获取当前地理位置得到经纬度 // H5 获取当前位置经纬度 var location_lon = '',location_lat = ''; // 经度,纬度 if (navigator.geolocation){ navigator.geolocation.getCurrentPosition(function (position)