android 調用百度地圖客戶端,

之前都是使用百度API在軟件裏面作一個百度地圖出來這樣感受既浪費時間又浪費精力,這裏就教你們直接使用Intent的方式調用手機上安裝的百度地圖客戶端,訪問咱們所須要的路徑規劃等,
//調起百度地圖客戶端
try {
     intent = Intent.getIntent("intent://map/direction?origin=latlng:34.264642646862,108.95108518068|name:我家&destination=大雁塔&mode=driving®ion=西安&referer=Autohome|GasStation#Intent;scheme=bdapp;package=com.baidu.BaiduMap;end");
         if(isInstallByread("com.baidu.BaiduMap")){
             startActivity(intent); //啓動調用
             Log.e("GasStation", "百度地圖客戶端已經安裝") ;
         }else{
             Log.e("GasStation", "沒有安裝百度地圖客戶端") ;
         }
     } catch (URISyntaxException e) {
         e.printStackTrace();
}

可是,若客戶端沒有安裝了百度地圖客戶端就會報 No Activity.... 直接會致使程序掛掉,這是開發者不但願看到的.因此在調用以前判斷該手機是否安裝了百度地圖客戶端,咱們知道百度的包名爲 com.baidu.BaiduMap
因此經過下面的方法進行判斷: java

/**  
 * 判斷是否安裝目標應用  
 * @param packageName 目標應用安裝後的包名  
 * @return 是否已安裝目標應用  
 */   
 private boolean isInstallByread(String packageName) {   
    return new File("/data/data/" + packageName).exists();   
 }


咱們就能夠靈活的去調用百度地圖了。
個人intent是作導航用的。其餘地圖功能自行實現(其餘功能須要的話就自行參考百度URL-API)。附上連接: http://developer.baidu.com/map/uri-intro.htm#idmykey1

調用高德地圖:(其餘寫法都是相同只是URL-API不一樣) android

intent = Intent.getIntent("androidamap://path?sourceApplication=GasStation&sid=BGVIS1&slat=34.264642646862&slon=108.95108518068&sname=當前位置&did=BGVIS2&dlat=36.3&dlon=116.2&dname=終點位置&dev=1&m=2&t=0");



開源中國好像沒有地方上傳附件,好比項目什麼的。這個有點鬱悶,高德就自行尋找下URL-API吧
相關文章
相關標籤/搜索