• Android使用JS百度定位+web百度定位


    一、先去百度地图api官网申请AK http://lbsyun.baidu.com

      1、iosSDK申请

        只需要填写个安全码(包名)然后提交

      2、Android SDK申请

        填写SHA1值(B4:19:CE:70:13:09:14:1E:6C:1A:58:B9:AC:51:D1:C4:AC:D1:88:E5)长的这个样子;具体获取方法因人而异;我是直接找到android.keystore.info这个文件在里面拿的

        填写包名

        这里需要特别注意的是申请下来的sdk和包名一一对应的,包名不一致不能混用,所以更改签名文件和包名后需要重新获取AK

    二、引入 require("cordova!cordova-plugin-geolocation"); (引入方法因人而异)

      1、先通过geolocation对象获取经纬度;这里提供两个方法

      (这里我遇到了整个app中只有第一次调用这个方法的时候才生效;原因是因为包名改变了但是AK用的之前的所以不能成功调用。真机第一次可以成功获取到地址;chrome科学上网和模拟器中每次都能获取到地址,被误导了就没有考虑包的问题,什么原理能让旧的AK仍然生效)

      

    this.watchID = navigator.geolocation.watchPosition(successCallback, errorCallback, options);// 获取经纬度
    navigator.geolocation.getCurrentPosition(successCallback, errorCallback, options);// 获取经纬度

      经纬度可以在成功的回调函数中获取

      function successCallback(position) {
                var latitude = position.coords.latitude;// 纬度
                var longitude = position.coords.longitude;// 经度
                //console.log(longitude + "=" + latitude)
    
             }

      2、成功获取获取经纬度后调取百度的API获取地址

        2.1、web服务API获取地理位置信息(这里安卓AK是用来打包时填写的;这个Ak是调用接口是用的)

        符官方文档 :http://lbsyun.baidu.com/index.php?title=webapi/guide/webservice-geocoding-abroad

        $.ajax({
                    url : "http://api.map.baidu.com/geocoder/v2/?callback=renderReverse&location=" + 纬度+ "," + 经度 + "&output=json&pois=1&ak=你的Web端Ak",
                    dataType : 'jsonp',
                    processData : false,
                    type : 'get',
                    success : function(data) {
                        debugger
                        var sCity = data.result.formatted_address;// 城市区县
                        var sTown = data.result.business;//
                        var sdetailed = data.result.sematic_description;// 详细地址
    
                        // 具体地址定位login
                        var slongadress = sCity + sTown + sdetailed;// 拼接地址
    
                    }

      2.2 Android  SDK获取地址(后续补充)

      2.3 服务端 获取地址(后续需要完善的东西挺多另外开了一篇,下面是code实现)

      https://www.cnblogs.com/404code/p/10570849.html

  • 相关阅读:
    Metaclass
    Pydantic
    Alembic
    SQLAlchemy
    django2:路由path语法
    Django 学习笔记之模型高级用法
    Flask拾遗总汇1
    Flask中before_request与after_request使用
    Flask 中字典数据返回(jsonify)
    浅析django的abstract,proxy, managed
  • 原文地址:https://www.cnblogs.com/404code/p/9712079.html
Copyright © 2020-2023  润新知