rooanlee
rooanlee
  • 发布:2014-09-14 12:21
  • 更新:2014-11-11 14:12
  • 阅读:5676

App: 新增Geolocation通过百度地图模块进行定位 版本更新有这个代码没有啊

分类:HTML5+
mui
2014-09-14 12:21 负责人:无 分享
已邀请:
神才

神才

同问

DCloud_App_Array

DCloud_App_Array

示例:

// 通过百度定位模块获取位置信息  
function getPosBaidu(){  
    outSet( "获取百度定位位置信息:" );  
    plus.geolocation.getCurrentPosition( function(){  
        var str = "";  
        var timeflag = position.timestamp;//获取到地理位置信息的时间戳;一个毫秒数;  
        str += "时间戳:"+timeflag+"<br/>";  
        var codns = position.coords;//获取地理坐标信息;  
        var lat = codns.latitude;//获取到当前位置的经度;  
        str += "经度:"+lat+"<br/>";  
        var longt = codns.longitude;//获取到当前位置的纬度  
        str += "纬度:"+longt+"<br/>";  
        alert(str);  
        }, function ( e ) {  
        outSet( "获取百度定位位置信息失败:"+e.message );  
    },{provider:'baidu'});  
}

注意:百度定位模块需要配置百度地图相关参数才能正常使用。

  • Riant

    plus.geolocation --- 这个应该是 webview 的位置API,也就是 HTML5 的API,依赖于浏览器实现,不确定 HBuilder 会不会处理。

    基于百度地图SDK 的定位,我下面的代码测试可用,之前也是找了很多文档,特此分享下,希望对遇到的朋友有帮助:


    var map = new plus.maps.Map("mapArea");

    map.centerAndZoom(new plus.maps.Point(116.3977,39.906016),12);

    // 获取用户位置信息

    plus.nativeUI.showWaiting('定位中...');

    map.getUserLocation(function(state, point){

    locationCallback(state, point, map);

    plus.nativeUI.closeWaiting();

    });


    // locationCallback

    // 通知结果方法

    function locationCallback( state, point, map ) {

    if ( 0 == state ) {

    var lng = point.getLng(),

    lat = point.getLat(),

    myPoint = new plus.maps.Point(lng, lat);


                map.centerAndZoom(myPoint, 14);  
    map.addOverlay(createMarker(lng, lat));

    // 经纬度、地址转换

    var url='http://api.map.baidu.com/geocoder/v2/?ak=xxxxxxx&location='+ lat +','+ lng +'&output=json';

    // xhrCreate 参考xhr 示范哈

    xhrCreate(url);

    } else {

    alert( "无法获取您的当前位置" );

    }

    }

    2014-11-11 14:34

  • 大道之简

    如何在h5+中获取地图视野

    2015-04-08 11:05

  • t***@163.com

    请问ios模式警报不弹出是什么原因导致的,上个版本还好用,这次送审核被拒绝了当在 Wi-Fi 上运行 iOS 13.3 的 iPad 上查看时,我们在你的应用程序中发现了一个或多个错误。


    -当请求通知和位置的许可时,模式警报没有提示。

    望答复

    2019-12-30 22:17

Riant

Riant

发现有了,在我自己的Android 上比 HTML5 的 Geolocation API 快多了,也还没遇到定位失败的情况

该问题目前已经被锁定, 无法添加新回复