您好,登錄后才能下訂單哦!
private void initMap() {
// 定位初始化
mLocClient = new LocationClient(this);
mLocClient.registerLocationListener(myListener);
LocationClientOption option = new LocationClientOption();
option.setOpenGps(true);// 打開gps
option.setCoorType("bd09ll"); // 設置坐標類型
// setScanSpan < 1000 則為 app主動請求定位;
// setScanSpan>=1000,則為定時定位模式(setScanSpan的值就是定時定位的時間隔))
// 定時定位模式中,定位sdk會按照app設定的時間定位進行位置更新,定時回調定位結果。
// http://developer.baidu.com/map/index.php?title=android-locsdk/qa
// option.setScanSpan(1000);
mLocClient.setLocOption(option);
mLocClient.start();
}
通過百度地圖(以上方法)獲取當前坐標,在導航地圖上顯示的話,位置將發生偏移
解決辦法(用LocationManager定位管理器獲取):
LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE);
Location location = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER);
double longitude = location.getLongitude();
double latitude = location.getLatitude();
將LocationManager定位管理器獲取到的經緯度設置到導航地圖上,即可顯示當前位置(較小偏移)
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。