您的位置:首页 > 移动开发 > 微信开发

微信公众号通过百度地图接口实现地图导航的方法

2017-09-10 14:31 681 查看
1.先使用微信的JS-SDK 中的获取地理位置接口获取到地理位置信息 ; 然后将获取的经纬度信息转换为百度地图的经纬度,最后再使用百度地图的导航接口即可:
微信获取地理位置接口js:

wx.getLocation({

    type: 'wgs84', // 默认为wgs84的gps坐标,如果要返回直接给openLocation用的火星坐标,可传入'gcj02'

    success: function (res) {

        var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90

        var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。

        var speed = res.speed; // 速度,以米/每秒计

        var accuracy = res.accuracy; // 位置精度

        getBaiduLocation(longitude,latitude); //转换为百度坐标

    }

});

//转换百度坐标

    var getBaiduLocation = function(longitude,latitude) {

        $.ajax({

            type: "GET",

            url: 'http://api.map.baidu.com/geoconv/v1/?coords='+longitude+','+latitude+'&from=1&to=5&output=json&ak=nHbhscSu1l3CjSLBNRUleeW1lppoVpaL',

            dataType: 'jsonp',

            success: function (msg) {

                try {

                    var result = msg.result;

                    var lat = result[0].y;

                    var lng = result[0].x;

                    console.log(lat)

                    console.log(lng)

                    navi(result[0]); //导航

                } catch (e) {

                    $.fn.alert(e.message);

                }

            }

        });

    };

//导航

 var navi = function(){

        //    //门店列表页导航

        $.fn.events.tap('.daohang', function (location) {

           var bendizuobiao1 = location.x; //经度

           var bendizuobiao2 = location.y; //纬度

            //所要导航的目的地的坐标及其城市,县区,地址详情信息

          var Address = ‘上海市;   //城市

          var bendics =‘闵行区’; //县区

          var mendianxq
='浦江路58弄浦江花园';

           var mendianzuobiao1 = location.x; //经度

           var mendianzuobiao2 = location.y; //纬度

           var url = "http://api.map.baidu.com/direction?origin=latlng:" + bendizuobiao2 + "," + bendizuobiao1 + "|name:我目前位置&destination=latlng:"
+ mendianzuobiao2 + "," + mendianzuobiao1 + "|name:" + Address + "&mode=driving&origin_region=" + bendics + "&destination_region=" + mendianxq + "&output=html&src=" + window.location.host;

            console.log(url)

           
window.location.href = url ;

        });

    };

不要直接复制用,因为使用框架写的,所以直接复制可能用不了,基本代码就这样,根据自己需求改下即可。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐