導航:首頁 > 編程語言 > 百度api地圖java

百度api地圖java

發布時間:2023-03-13 23:22:37

1. 如何使用java和百度地圖api 得到兩點之間的路程(

獲取到兩點的經緯度,再調用網路地圖的api計算。我記得,有一個計算距離的api.

<script type="text/javascript">
// 網路地圖API功能
var map = new BMap.Map("allmap");
map.centerAndZoom("重慶",12); //初始化地圖,設置城市和地圖級別。
var pointA = new BMap.Point(106.486654,29.490295); // 創建點坐標A--大渡口區
var pointB = new BMap.Point(106.581515,29.615467); // 創建點坐標B--江北區
alert('從大渡口區到江北區的距離是:'+(map.getDistance(pointA,pointB)).toFixed(2)+' 米。'); //獲取兩點距離,保留小數點後兩位
var polyline = new BMap.Polyline([pointA,pointB], {strokeColor:"blue", strokeWeight:6, strokeOpacity:0.5}); //定義折線
map.addOverlay(polyline); //添加折線到地圖上
</script>

2. 調用百度地圖api出現java.lang.NoClassDefFoundError: com.baidu.mapapi.SDKInitializer

導入網路的相關庫文件
同步一下再試試。
這個在配置文件中需要相關的key值得

3. 怎樣用java調用百度地圖的JavaScript API

這種地圖類的api都是基於前端的 簡單的就是說 你在前端用javascript實例化一個地圖 可以通過自定義伺服器請求獲取你需要的數據 然後把數據返回給api api就會自動幫你處理數據 產生新的視圖

4. 如何使用java 開發百度地圖

網路有提供api的,一般是按照api給的網址,在網址後加經緯度或者地區名,但是網路地圖要申請秘鑰的,這個需要自己去申請一個,免費的,類似的功能你可以參考下面的源碼雖然是javascript的,但是java用起來差不多,畢竟你的地圖肯定是在web頁面顯示的

<!DOCTYPEhtml>
<html>
<head>
<metaname="viewport"content="initial-scale=1.0,user-scalable=no"/>
<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>
<title>Hello,World</title>
<styletype="text/css">
html{height:100%}
body{height:100%;margin:0px;padding:0px}
#container{height:100%}
</style>
<scripttype="text/javascript"src="http://api.map..com/api?v=2.0&ak=您的密鑰">
//v2.0版本的引用方式:src="http://api.map..com/api?v=2.0&ak=您的密鑰"
//v1.4版本及以前版本的引用方式:src="http://api.map..com/api?v=1.4&key=您的密鑰&callback=initialize"
</script>
</head>

<body>
<divid="container"></div>
<scripttype="text/javascript">
varmap=newBMap.Map("container");//創建地圖實例
varpoint=newBMap.Point(116.404,39.915);//創建點坐標
map.centerAndZoom(point,15);//初始化地圖,設置中心點坐標和地圖級別
</script>
</body>
</html>

5. 怎樣在java中調用百度地圖的API

網路地圖Web服務API為開發者提供http介面,即開發者通過http形式發起檢索請求,獲取返回json或xml格式的檢索數據。
api官網說明鏈接:

http://developer..com/map/webservice.htm

1、可用介面列舉:
獲取相關地址提示 place suggestion
http://api.map..com/place/v2/suggestion?query=水杉®ion=成都&output=json&ak=

2、獲取坐標 geocoding

http://api.map..com/geocoder?address=錦江區菱安路299號&output=json&key=

http://api.map..com/place/v2/search?ak=&output=json&query=藍光coco金沙&page_size=10&page_num=0&scope=1®ion=成都
{
"status":0,
"message":"ok",
"total":2,
"results":[
{
"name":"藍光COCO金沙",
"location":{
"lat":30.687544,
"lng":103.996691
},
"address":"西三環外金沙西源大道(IT大道旁)",
"uid":"223992992c5ee7e0841541df"
},
{
"name":"藍光COCO金沙2期",
"location":{
"lat":30.681123,
"lng":103.991123
},
"address":"青羊區金沙IT大道旁",
"uid":"b7bb5abb1cd4982213293580"
}
]
}

3、設施導航
http://api.map..com/place/v2/search?ak=&output=json&query=圖書館&page_size=20&page_num=0&scope=2®ion=成都

4、java測試類:
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.net.URL;
import java.net.URLEncoder;
import java.util.HashMap;
import java.util.Map;

public class LocationUtil {

private static final String BAIDU_APP_KEY = "";

/**
* 返回輸入地址的經緯度坐標 key lng(經度),lat(緯度)
*/
public static Map<String, String> getLatitude(String address) {
try {
// 將地址轉換成utf-8的16進制
address = URLEncoder.encode(address, "UTF-8");
// 如果有代理,要設置代理,沒代理可注釋
// System.setProperty("http.proxyHost","192.168.172.23");
// System.setProperty("http.proxyPort","3209");

URL resjson = new URL("http://api.map..com/geocoder?address="
+ address + "&output=json&key=" + BAIDU_APP_KEY);
BufferedReader in = new BufferedReader(new InputStreamReader(
resjson.openStream()));
String res;
StringBuilder sb = new StringBuilder("");
while ((res = in.readLine()) != null) {
sb.append(res.trim());
}
in.close();
String str = sb.toString();
System.out.println("return json:" + str);
if(str!=null&&!str.equals("")){
Map<String, String> map = null;
int lngStart = str.indexOf("lng\":");
int lngEnd = str.indexOf(",\"lat");
int latEnd = str.indexOf("},\"precise");
if (lngStart > 0 && lngEnd > 0 && latEnd > 0) {
String lng = str.substring(lngStart + 5, lngEnd);
String lat = str.substring(lngEnd + 7, latEnd);
map = new HashMap<String, String>();
map.put("lng", lng);
map.put("lat", lat);
return map;
}
}
} catch (Exception e) {
e.printStackTrace();
}
return null;
}

public static void main(String args[]) {

Map<String, String> map = LocationUtil.getLatitude("成都 高新西區西區大道1398號");
if (null != map) {
System.out.println(map.get("lng"));
System.out.println(map.get("lat"));
}
}
}

6. 百度地圖api java怎麼用

一、申請密鑰
1、先用eclipse創建一個android工程
2、在網路api官網上申請一個密鑰,鏈接:http://lbsyun..com/apiconsole/key
bubuko.com,布布扣
二、工程配置
1、將mapapi_vX_X_X.jar拷貝到工程libs目錄下,將libBaiMapSDK_vX_X_X.so拷貝到libs\armeabi
目錄下,拷貝完成後,如下所示:
註:liblocSDK3.so和locSDK_3.1.jar為網路定位SDK所使用資源,開發者可根據實際需求自行添加。
bubuko.com,布布扣
2、右鍵工程屬性,在Libraries中選擇「Add External JARs」,選擇mapapi_vX_X_X.jar,確定返回
配置好以上步驟,即可使用網路地圖了

三、顯示網路地圖
1、在android配置清單文件中AndroidManifest.xml添加開發密鑰和所需許可權
<application> <meta-data android:name="com..lbsapi.API_KEY" android:value="開發者 key" /> </application>

所需許可權
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.USE_CREDENTIALS" />
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="com.android.launcher.permission.READ_SETTINGS" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
2、在xml布局中添加地圖控制項
<com..mapapi.map.MapView
android:id="@+id/bmapView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true" />
?3、在應用程序創建時初始化,SDK引用的全局變數Context
注意:在SDK各功能組件使用之前都需要調用
SDKInitializer.initialize(getApplicationContext());,因此我們建議該方法放在Application的初始化方法中
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
//在使用SDK各組件之前初始化context信息,傳入ApplicationContext
SDKInitializer.initialize(getApplicationContext());
System.out.println("SDKInitializer一初始化");
}

}
設置自定義的application為默認應用
<application
android:name="com.bao.ah.MyApplication"
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >

public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//在使用SDK各組件之前初始化context信息,傳入ApplicationContext
//注意該方法要再setContentView方法之前實現
//SDKInitializer.initialize(getApplicationContext());
setContentView(R.layout.activity_main);
}
}
4、網路地圖應和Activity生命周期綁定
public class MainActivity extends Activity {
MapView mMapView = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//在使用SDK各組件之前初始化context信息,傳入ApplicationContext
//注意該方法要再setContentView方法之前實現
//SDKInitializer.initialize(getApplicationContext());
setContentView(R.layout.activity_main);
//獲取地圖控制項引用
mMapView = (MapView) findViewById(R.id.bmapView);
}
@Override
protected void onDestroy() {
super.onDestroy();
//在activity執行onDestroy時執行mMapView.onDestroy(),實現地圖生命周期管理
mMapView.onDestroy();
}
@Override
protected void onResume() {
super.onResume();
//在activity執行onResume時執行mMapView. onResume (),實現地圖生命周期管理
mMapView.onResume();
}
@Override
protected void onPause() {
super.onPause();
//在activity執行onPause時執行mMapView. onPause (),實現地圖生命周期管理
mMapView.onPause();
}
}

7. java怎麼調用百度地圖api得到動態經緯度有demo最好,多謝

經緯度不是通過網路地圖獲得的,而是通過移動設備自身的GPS得到的

不過想要在GPS坐標在網路地圖上顯示出正確的地理位置,需要調用的火星坐標轉換介面:
http://api.map..com/ag/coord/convert?from=0&to=4&x=121.44xxxx&y=31.22yyyy(xxxx、yyyy涉及隱私不能完全給出)。這個介面會返回轉換後的火星坐標地址,BASE64編碼的,可以進行解碼。然後把火星坐標地址傳到地圖中就行了

閱讀全文

與百度api地圖java相關的資料

熱點內容
android響應時間測試 瀏覽:940
java編程思想第四版答案 瀏覽:888
如何對nbt編程 瀏覽:885
mscpdf 瀏覽:948
文件夾d盤突然0位元組可用 瀏覽:272
吃火腿腸的解壓場面 瀏覽:339
衛星鍋加密教程 瀏覽:792
php7的特性是什麼 瀏覽:469
編譯類高級語言源代碼運行過程 瀏覽:177
科普中國app怎麼分享 瀏覽:87
51單片機與32單片機比較 瀏覽:422
SQL加密存儲解密 瀏覽:507
電氣工程師把程序加密 瀏覽:797
解壓切東西動畫版 瀏覽:965
點到橢圓的距離演算法 瀏覽:388
新的編譯系統 瀏覽:533
cad替換樣板命令 瀏覽:363
des演算法例子 瀏覽:390
怎麼隱藏系統app 瀏覽:524
怎麼在惠生活查詢定向app 瀏覽:274