cordova 獲取地理位置


第一步,引入插件

cordova plugin add cordova-plugin-geolocation

第二步,

<!DOCTYPE html>
<html>
    <head>
        <title>Capture Photo</title>
        <meta http-equiv="Content-type" content="text/html; charset=utf-8">
        <script type="text/javascript" charset="utf-8" src="cordova.js"></script>
        <script type="text/javascript" charset="utf-8">
 
            document.addEventListener("deviceready",onDeviceReady,false);
 
            //Cordova加載完成會觸發
            function onDeviceReady() {
            }
 
            function getCurrentPosition(){
                //定位數據獲取成功響應
                var onSuccess = function(position) {
                    alert('緯度: '          + position.coords.latitude          + '\n' +
                          '經度: '         + position.coords.longitude         + '\n' +
                          '海拔: '          + position.coords.altitude          + '\n' +
                          '水平精度: '          + position.coords.accuracy          + '\n' +
                          '垂直精度: ' + position.coords.altitudeAccuracy  + '\n' +
                          '方向: '           + position.coords.heading           + '\n' +
                          '速度: '             + position.coords.speed             + '\n' +
                          '時間戳: '         + position.timestamp                + '\n');
                



          };
//定位數據獲取失敗響應 function onError(error) { alert('code: ' + error.code + '\n' + 'message: ' + error.message + '\n'); } //開始獲取定位數據 navigator.geolocation.getCurrentPosition(onSuccess, onError); } </script> </head> <body style="padding-top:50px"> <button style="font-size:23px;" onclick="getCurrentPosition();">獲取位置信息</button> </body> </html>

這兩步可以實現獲取經緯度;

那么我們繼續獲取百度api實現地理位置文字獲取;

我直接在上個hmlt添加好了

<!DOCTYPE html>
<html>
<head>
    <title>Capture Photo</title>
    <meta http-equiv="Content-type" content="text/html; charset=utf-8">
    <script type="text/javascript" charset="utf-8" src="cordova.js"></script>

<!--這里是引入百度api的地方-->
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=5a21b9801cac081f6473bafdc558c53a"></script> <script type="text/javascript" charset="utf-8"> document.addEventListener("deviceready",onDeviceReady,false); //Cordova加載完成會觸發 function onDeviceReady() { } function getCurrentPosition(){ //定位數據獲取成功響應 var onSuccess = function(position) { alert('緯度: ' + position.coords.latitude + '\n' + '經度: ' + position.coords.longitude + '\n' + '海拔: ' + position.coords.altitude + '\n' + '水平精度: ' + position.coords.accuracy + '\n' + '垂直精度: ' + position.coords.altitudeAccuracy + '\n' + '方向: ' + position.coords.heading + '\n' + '速度: ' + position.coords.speed + '\n' + '時間戳: ' + position.timestamp + '\n'); // 百度地圖API功能 var map = new BMap.Map("allmap"); alert("測試--"+map+"經度:"+position.coords.latitude+"緯度"+position.coords.longitude) var point = new BMap.Point(position.coords.longitude,position.coords.latitude);//緯度,經度 alert("測試-point-") var gc = new BMap.Geocoder(); alert("測試-gc-") var pt = point; gc.getLocation(pt, function(rs){ var addComp = rs.addressComponents; alert("成功--") alert(addComp.province + ", " + addComp.city + ", " + addComp.district + ", " + addComp.street + ", " + addComp.streetNumber); }); };           ///////////////////////////////////////百度api結束/////////// //定位數據獲取失敗響應 function onError(error) { alert('code: ' + error.code + '\n' + 'message: ' + error.message + '\n'); } //開始獲取定位數據 navigator.geolocation.getCurrentPosition(onSuccess, onError); } </script> </head> <body style="padding-top:50px"> <button style="font-size:23px;" onclick="getCurrentPosition();">獲取位置信息</button> </body> </html>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM