1. 怎麼在android百度地圖通過經緯度來定位並且顯示出地圖位置
可以參考如下內容:
使用Android自帶的LocationManager和Location獲取位置的時候,經常會有獲取的location為null的情況,並且操作起來也不是很方便,在這個Demo里我使用了網路地圖API中的定位SDK,可以一次性獲取當前位置經緯度以及詳細地址信息,還可以獲取周邊POI信息,同時可以設定位置通知點,當到達某一位置時,發出通知信息等方式來告知用戶。jar包下載以及官方文檔請參照:網路定位SDK,前提是需要注冊網路開發者賬號。
下面來看看定位的基本原理,目前,定位SDK可以通過GPS、基站、Wifi信號進行定位。基本定位流程如下圖所示,當應用程序向定位SDK發起定位請求時,定位SDK會根據當前的GPS、基站、Wifi信息生成相對應的定位依據。然後定位SDK會根據定位依據來進行定位。如果需要,定位SDK會向定位伺服器發送網路請求。定位伺服器會根據請求的定位依據推算出對應的坐標位置,然後根據用戶的定製信息,生成定位結果返回給定位SDK。
2. 怎麼在android百度地圖通過經緯度來定位並且顯示出地圖位置
1、設置AndroidManfest.xml許可權ViewCode2、配置jar包3、初始化設置BMapManagerViewCodemapManager=newBMapManager(this);mapManager.init("",newMyMKGeneralListener());//設置通知間隔:iMaxSecond-最大通知間隔,單位:秒;iMinSecond-最小通知間隔,單位:秒mapManager.getLocationManager().setNotifyInternal(20,5);4、獲取手機經緯度,並顯示地址信息ViewCodemapManager.getLocationManager().requestLocationUpdates(newMyLocationListener());mapManager.start();在LocationListener中獲取經緯度{@(Locationarg0){intjin=(int)(arg0.getLatitude()*1000000);intwei=(int)(arg0.getLongitude()*1000000);tv1.setText("經度:"+jin+",緯度:"+wei);MKSearchsearch=newMKSearch();search.init(mapManager,newMyMKSearchListener());search.reverseGeocode(newGeoPoint(jin,wei));}}在MKSearch介面中進行地址轉化
3. 百度地圖android中怎麼通過地址獲取經緯度
在網路地圖開發的時候,我們經常會通過地址去得到當前地址的經緯度,方法如下:
方法一、
public GeoPoint getGeoPointBystr(String str) {
GeoPoint gpGeoPoint = null;
if (str!=null) {
Geocoder gc = new Geocoder(MyMapActivity.this,Locale.CHINA);
List<Address> addressList = null;
try {
addressList = gc.getFromLocationName(str, 1);
if (!addressList.isEmpty()) {
Address address_temp = addressList.get(0);
//計算經緯度
double Latitude=address_temp.getLatitude()*1E6;
double Longitude=address_temp.getLongitude()*1E6;
System.out.println("經度:"+Latitude);
System.out.println("緯度:"+Longitude);
//生產GeoPoint
gpGeoPoint = new GeoPoint((int)Latitude, (int)Longitude);
}
} catch (IOException e) {
e.printStackTrace();
}
}
return gpGeoPoint;
}
此方法只需傳入一個地址即可(當然,這里應該說是一個合法的地址)
此方法得到一個GeoPoint對象,通過GeoPoint對象.getLatitude()/getLongitude()就可以得到對應的經緯度
但是值得注意的是,以上方法存在API版本問題,2.2版本的不可以用
方法二、(個人比較推薦這種方法)
mkSearch.geocode("詳細地址", "城市");
這里的詳細地址可以通過MKSuggestionInfo對象.key得到,而城市也可以根據MKSuggestionInfo對象.city得到
調用以上方法後,就會在執行實現MKSearchListener介面類中的以下方法
public void onGetAddrResult(MKAddrInfo info, int error) {
// TODO Auto-generated method stub
System.out.println("經緯度:"+info.geoPt.getLatitudeE6()+" "+info.geoPt.getLongitudeE6());
}
這樣就可以得到了經緯度