第一步,需要申请百度地图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包不对,所以一般遇到这种情况,建议分析导入的包是否正确,因为官方的包有好几种。
这只是最基础的显示地图的操作,更多功能请参照官方开发文档。百度地图开放平台