Android-----代碼實現打開手機第三方應用APP(高德,騰訊,百度地圖)

 

最近做一個項目,有一個需要啓動第三方應用,和微信的地圖查看差不多,需要啓動高德,百度或騰訊地圖來查看;特來分享,希望有所幫助。

 

案例效果如圖:

        

要想啓動第三方;首先要知道他的包名

一:高德

高德:com.autonavi.minimap

高德接口說明:http://lbs.amap.com/api/amap-mobile/guide/android/route

你可以驗證存不存在,不存在則可提示相關信息;

 

 
  1. if (isInstallByread("com.autonavi.minimap")) {

  2.  
  3. //跳轉處理

  4. }else {

  5. Toast.makeText(MainActivity.this,"未安裝該應用",Toast.LENGTH_LONG).show();

  6. }

  7.  
  8. private boolean isInstallByread(String packageName) {

  9. return new File("/data/data/" + packageName).exists();

  10. }


高德文字規劃路線

 

 

 
  1.  //單獨導航

  2.  
  3. Intent intent = new Intent("android.intent.action.VIEW",

  4. android.net.Uri.parse("amapuri://route/plan/?dlat=39.98848272&dlon=116.47560823&dev=0&t=0"));

  5. //"androidamap://navi?sourceApplication=appname&poiname=fangheng&lat=26.57&lon=106.71&dev=1&style=2"

  6. // amapuri://route/plan/?sname=A&did=BGVIS2&dlat=39.98848272&dlon=116.47560823&dname=B&dev=0&t=0

  7. intent.setPackage("com.autonavi.minimap");

  8. //context.startActivity(intent);

  9.  
  10. //反地理編碼

  11. /*Intent inten1 = new Intent("android.intent.action.VIEW"

  12. , android.net.Uri.parse("androidamap://viewReGeo?sourceApplication=softname&lat=26.57&lon=106.71&dev=1"));

  13. inten1.setPackage("com.autonavi.minimap");// pkg=com.autonavi.minimap

  14. inten1.addCategory("android.intent.category.DEFAULT");

  15. context.startActivity(inten1);*/

  16.  
  17. //地理編碼

  18. Intent inten2 = new Intent("android.intent.action.VIEW",

  19. android.net.Uri.parse("androidamap://keywordNavi?sourceApplication=softname&keyword=貴州省貴陽市&style=2"));

  20. inten2.setPackage("com.autonavi.minimap");

  21. inten2.addCategory("android.intent.category.DEFAULT");

  22. startActivity(inten2);

 

 

二:百度

百度:com.autonavi.minimap 

百度接口說明:http://lbsyun.baidu.com/index.php?title=uri/api/android

 
  1. // Intent intent = Intent.getIntent("intent://map/direction?origin=latlng:26.58&destination=latlng:26.57&mode=transit&src=某某公司#Intent;" + "scheme=bdapp;package=com.baidu.BaiduMap;end");

  2.  
  3. //Intent intent = Intent.getIntent("intent://map/direction?origin=" + loc1 + "&destination=" + loc2 + "&mode=transit&src=某某公司#Intent;" + "scheme=bdapp;package=com.baidu.BaiduMap;end");

  4. //Intent intent = Intent.getIntent("intent://map/direction?destination=latlng:26.57+106.71&mode=transit&src=某某公司#Intent;" + "scheme=bdapp;package=com.baidu.BaiduMap;end");

  5. //起點 此處不傳值默認選擇當前位置

  6. Intent intent = Intent.getIntent("intent://map/direction?destination=貴陽市糧食局&mode=driving&src=XX科技有限公司#Intent;" + "scheme=bdapp;package=com.baidu.BaiduMap;end");

  7.  
  8.  
  9. /* Intent intent =new Intent();

  10.  
  11.  
  12. intent.setData(Uri.parse("baidumap://map/direction?destination=26.57,106.71&mode=driving"));*/

  13. startActivity(intent);

 

三:騰訊

騰訊接口說明:騰訊開發平臺查看或者下載源碼,源碼中包含了各種方式的接口文檔

 
  1. Intent intent =new Intent();

  2. //intent.setData(Uri.parse("qqmap://map/routeplan?type=drive&from=天壇南門&fromcoord=39.873145,116.413306&to=國家大劇院&tocoord=39.907380,116.388501"));

  3. intent.setData(Uri.parse("qqmap://map/search?keyword=貴州省貴陽市"));

  4.  
  5. //qqmap://map/geocoder?coord=39.904956,116.389449 //經緯度

  6. //qqmap://map/search?keyword=小肥羊&bound=39.907293,116.368935,39.914996,116.379321 //搜索附件

  7.  
  8. startActivity(intent);

 

 源碼點擊下載

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章