第一步,需要申請百度地圖API key。申請地址
第二步,下載百度地圖的相關開發文件,在eclipse下,將.jar文件導入到libs下,將.so拷貝到libs\armeabi目錄下。不同的eclipse版本可能還需要一下步驟:
在Eclipse 中選中工程,右鍵選 Properties->Java Build Path->Order and Export 使 Android Private Libraries處於勾選狀態。
第三步,在AndroidManifest文件中添加開發祕鑰和所需權限。具體如下:
添加祕鑰:
<application>
<meta-data
android:name="com.baidu.lbsapi.API_KEY"
android:value="開發者 key" />
</application>
添加權限:
<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" />
最後在java主文件中添加如下代碼:public class MainActivity extends Activity {
private MapView mMapView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
SDKInitializer.initialize(getApplicationContext());
setContentView(R.layout.activity_main);
init();
}
private void init() {
mMapView = (MapView) findViewById(R.id.bmapview);
mbdMap = mMapView.getMap();
}
@Override
protected void onDestroy() {
super.onDestroy();
mMapView.onDestroy();
mMapView = null;
}
@Override
protected void onPause() {
super.onPause();
mMapView.onPause();
}
@Override
protected void onResume() {
super.onResume();
mMapView.onResume();
}
}
經過以上步驟,運行代碼,就能夠顯示地圖了。
筆者在參照官方開發文檔時,出現過只能顯示地圖網格的情況,最後原因是因爲導入的.jar包不對,所以一般遇到這種情況,建議分析導入的包是否正確,因爲官方的包有好幾種。
這只是最基礎的顯示地圖的操作,更多功能請參照官方開發文檔。百度地圖開放平臺