天天看点

调用百度地图步骤

1步:下载jar包,两个文件一个jar一个so文件

http://developer.baidu.com/map/sdkandev-download.htm

//右下角有个"lib库"

2步:工程内引入库,将so文件放在工程的libs/armeabi 下面 //没有请新建文件夹

将jar文件放入libs下面

3步:选择工程右键属性->java bulid path->libraries->add jars选择你的工程内libs下的jar(上步放入的) OK就完成了包的引用

4步:给manifest添加权限(很重要)

[html]view plaincopyprint?

<uses-permissionandroid:name="android.permission.ACCESS_NETWORK_STATE"/>

<uses-permissionandroid:name="android.permission.ACCESS_FINE_LOCATION"/>

<uses-permissionandroid:name="android.permission.INTERNET"/>

<uses-permissionandroid:name="android.permission.WRITE_EXTERNAL_STORAGE"/>

<uses-permissionandroid:name="android.permission.ACCESS_WIFI_STATE"/>

<uses-permissionandroid:name="android.permission.CHANGE_WIFI_STATE"/>

<uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>

5步:布局layout 之 main.xml  

<?xmlversion="1.0"encoding="utf-8"?>

<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"

android:orientation="vertical"

android:layout_width="fill_parent"

android:layout_height="fill_parent"

>

<com.baidu.mapapi.MapViewandroid:id="@+id/map_View"

android:clickable="true"

/>

</LinearLayout>

6步:开发百度地图,需要申请个Key,很简单,只需几秒钟时间即可完成。 http://developer.baidu.com/map/android-mobile-apply-key.htm

7步:示例mainActivity

[java]view plaincopyprint?

publicclass MainActivity extends MapActivity {    

private BMapManager mapManager;    

private MapView mapView;    

private MapController mapController;    

@Override

publicvoid onCreate(Bundle savedInstanceState) {    

super.onCreate(savedInstanceState);    

        setContentView(R.layout.main);    

// init 

        mapManager = new BMapManager(getApplication());    

        mapManager.init("285B415EBAB2A92293E85502150ADA7F03C777C4", null); //your API key 

super.initMapActivity(mapManager);    

        mapView = (MapView) findViewById(R.id.map_View);    

// 设置地图模式为交通地图   

        mapView.setTraffic(true);    

// 设置启用内置的缩放控件   

        mapView.setBuiltInZoomControls(true);    

// 用经纬度初始化中心点 

        GeoPoint point = new GeoPoint((int) (47.118440 * 1E6), (int) (87.493147 * 1E6));    

// 创建标记maker //有一个标注图片,没有上百度找一张,drawable里 

        Drawable marker = this.getResources().getDrawable(R.drawable.iconmarka);    

// 为maker定义位置和边界   

        marker.setBounds(0, 0, marker.getIntrinsicWidth(), marker.getIntrinsicHeight());    

// 取得地图控制器对象,用于控制MapView   

        mapController = mapView.getController();    

// 设置地图的中心   

        mapController.setCenter(point);    

// 设置地图默认的缩放级别   

        mapController.setZoom(12);    

    }    

protectedboolean isRouteDisplayed() {    

returnfalse;    

protectedvoid onDestroy() {    

if (mapManager != null) {    

            mapManager.destroy();    

            mapManager = null;    

        }    

super.onDestroy();    

protectedvoid onPause() {    

            mapManager.stop();    

super.onPause();    

protectedvoid onResume() {    

            mapManager.start();    

super.onResume();    

}