百度地圖SDK爲開發者提供了便捷的顯示百度地圖數據的接口,經過如下幾步操做,便可在您的應用中使用百度地圖數據:android
第一步:建立並配置工程(具體方法參見工程配置部分的介紹);api
第二步:在AndroidManifest中添加開發密鑰、所需權限等信息;app
(1)在application中添加開發密鑰框架
<application> <meta-data android:name="com.baidu.lbsapi.API_KEY" android:value="開發者 key" /> </application>
2)添加所需權限ide
<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.WAKE_LOCK"/><uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /><uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /><uses-permission android:name="android.permission.GET_TASKS" /><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/><uses-permission android:name="android.permission.WRITE_SETTINGS" />
第三步,在佈局xml文件中添加地圖控件;佈局
<com.baidu.mapapi.map.MapView android:id="@+id/bmapView" android:layout_width="fill_parent" android:layout_height="fill_parent" android:clickable="true" />
第四步,在應用程序建立時初始化 SDK引用的Context 全局變量:spa
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); } }
注意:在SDK各功能組件使用以前都須要調用 code
SDKInitializer.initialize(getApplicationContext());,所以咱們建議該方法放在Application的初始化方法中 xml
第五步,建立地圖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(); } }
完成以上步驟後,運行程序,便可在您的應用中顯示以下地圖:
以上的例子爲你們介紹瞭如何構建一個基礎的地圖頁面。地圖控件自v2.3.5版本起,支持多實例,即開發者能夠在一個頁面中創建多個地圖對象,而且針對這些對象分別操做且不會產生相互干擾。具體使用方法請參考MutiMapViewDemo中的相關介紹。
此外,自v2.3.5版本開始。MapView控件還增長了對Fragment框架的支持。用戶能夠使用SupportMapFragment控件完成相應框架內的開發工做(詳見MapFragmentDemo)。