2022年百度map开发 .pdf
《2022年百度map开发 .pdf》由会员分享,可在线阅读,更多相关《2022年百度map开发 .pdf(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、本文主要讲解如何通过百度地图API 搜索得到两个地点之间的公交换乘方案信息,即从 A 点乘公交车到 B 点有哪些乘车方案可以选择。这是我写的第 3 篇介绍调用百度地图API 搜索服务的文章, 所以对搜索前要做的其它工作不再介绍,再加上代码中的注释也对相关的操作、方法做了尽可能详细的说明,所以直接看示例吧。1)布局文件 res/layout/main.xml xhtmlview plaincopy1.2.7.12.2)继承了 com.baidu.mapapi.MapActivity的 Activity类javaview plaincopy1.package com.liufeng.baiduma
2、p; 2.3.import android.os.Bundle; 4.import android.util.Log; 5.6.import com.baidu.mapapi.BMapManager; 7.import com.baidu.mapapi.GeoPoint; 8.import com.baidu.mapapi.MKAddrInfo; 9.import com.baidu.mapapi.MKDrivingRouteResult; 10.import com.baidu.mapapi.MKPlanNode; 11.import com.baidu.mapapi.MKPoiResult
3、; 12.import com.baidu.mapapi.MKSearch; 13.import com.baidu.mapapi.MKSearchListener; 14.import com.baidu.mapapi.MKTransitRoutePlan; 15.import com.baidu.mapapi.MKTransitRouteResult; 16.import com.baidu.mapapi.MKWalkingRouteResult; 17.import com.baidu.mapapi.MapActivity; 名师资料总结 - - -精品资料欢迎下载 - - - - -
4、- - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 9 页 - - - - - - - - - 18.import com.baidu.mapapi.MapController; 19.import com.baidu.mapapi.MapView; 20.import com.baidu.mapapi.TransitOverlay; 21.22.publicclass TransitPolicyActivity extends MapActivity 23./ 定义地图引擎管理类24.private BMapManager mapMa
5、nager; 25./ 定义搜索服务类26.private MKSearch mMKSearch; 27.28.private MapView mapView; 29.private MapController mapController; 30.31.Override32.publicvoid onCreate(Bundle savedInstanceState) 33.super .onCreate(savedInstanceState); 34. setContentView(R.layout.main); 35.36./ 初始化 MapActivity37. mapManager =
6、new BMapManager(getApplication(); 38./ init方法的第一个参数需填入申请的API Key39. mapManager.init(285B415EBAB2A92293E85502150ADA7F03C777C4 , null ); 40.super .initMapActivity(mapManager); 41.42. mapView = (MapView) findViewById(R.id.map_View); 43./ 设置地图模式为交通地图44. mapView.setTraffic(true ); 45./ 设置启用内置的缩放控件46. map
7、View.setBuiltInZoomControls(true ); 47.48./ 构造一个经纬度点(贵州大学)49. GeoPoint geoPoint = new GeoPoint(int ) ( 26.449446 * 1E6), (int ) (106.682949 * 1E6); 50.51./ 取得地图控制器对象,用于控制MapView52. mapController = mapView.getController(); 53./ 设置地图的中心54. mapController.setCenter(geoPoint); 55./ 设置地图默认的缩放级别56. mapCont
8、roller.setZoom(12); 57.58./ 初始化 MKSearch59. mMKSearch = new MKSearch(); 60. mMKSearch.init(mapManager, new MySearchListener(); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 9 页 - - - - - - - - - 61.62./ 起点:贵州大学63. MKPlanNode startPlanNode = new MKPlanNode(); 6
9、4. startPlanNode.pt = new GeoPoint(int ) (26.449446 * 1E6), (int ) (106.682949 * 1E6); 65./ 终点:贵州省移动66. MKPlanNode endPlanNode = new MKPlanNode(); 67. endPlanNode.pt = new GeoPoint(int ) (26.601771 * 1E6), (int ) (106.71968 * 1E6); 68./*69. * 设置公交换乘路线搜索策略,有以下4 种策略可选择:70. * 1)不含地铁: MKSearch.EBUS_NO_S
10、UBWAY71. * 2)时间优先: MKSearch.EBUS_TIME_FIRST72. * 3)最少换乘: MKSearch.EBUS_TRANSFER_FIRST 73. * 4)最少步行距离: MKSearch.EBUS_WALK_FIRST74. * 75. * 我们这里选择的搜索策略是最少换乘,即中途转车次数最少76. */77. mMKSearch.setTransitPolicy(MKSearch.EBUS_TRANSFER_FIRST); 78./ 要设置在哪个城市搜索79. mMKSearch.transitSearch( 贵阳, startPlanNode, endPl
11、anNode); 80. 81.82.Override83.protectedboolean isRouteDisplayed() 84.returnfalse; 85. 86.87.Override88.protectedvoid onDestroy() 89.if (mapManager != null) 90./ 程序退出前需调用此方法91. mapManager.destroy(); 92. mapManager = null ; 93. 94.super .onDestroy(); 95. 96.97.Override98.protectedvoid onPause() 99.if
12、(mapManager != null) 100./ 终止百度地图 API101. mapManager.stop(); 102. 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 9 页 - - - - - - - - - 103.super .onPause(); 104. 105.106.Override107.protectedvoid onResume() 108.if (mapManager != null) 109./ 开启百度地图 API110. mapMa
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年百度map开发 2022 百度 map 开发
限制150内