android引入百度地圖之最簡單的例子-HelloBaiDuMap

來源:互聯網
上載者:User

標籤:des   android   blog   http   java   使用   os   io   

 

開發工具

我用的是eclipse,目前這是開發android用的最多的一個工具。

開發準備

首先需要在百度地圖開發平台上下載所需要的文檔和功能,由於最新版的3.0.0的不是很熟悉,我這裡用的是稍舊一點的版本:2.4.1版的;這裡是:http://developer.baidu.com/map/sdkandev-download.htm。我是在這個頁面的右下角點擊曆史版本下載的2.4.1版的:

 下載之後它裡面有這樣一個壓縮檔:

 

解壓開之後是這樣的三個壓縮包:

 

其中Sample是它的Demo,解壓開之後是這樣的:

 

開啟之后里面是各種各樣功能的demo;

工程配置

第一步:將開發包裡的lib檔案夾整個拷貝,然後粘貼到你的專案檔夾下,覆蓋原有的檔案,然後是這樣的:

 

第二步:在工程屬性->Java Build Path->Libraries中選擇“Add External JARs”,選定baidumapapi_v2_4_1.jar,確定後返回。

通過以上兩步操作後,您就可以正常使用百度地圖SDK為您提供的全部功能了。

注意:由於adt外掛程式升級,若您使用Eclipse adt 22的話,需要對開發環境進行相應的設定,方法如下:

1. 在Eclipse 中選中工程,右鍵選 Properties->Java Build Path->Order and Export 使 Android Private Libraries處於勾選狀態;

2. Project -> clean-> clean all .

顯示百度地圖

百度地圖SDK為開發人員提供了便捷的顯示百度地圖資料的介面,通過以下幾步操作,即可在您的應用中使用百度地圖資料:

第一步:建立並配置工程(具體方法參見工程配置部分的介紹);

第二步:在AndroidManifest中添加開發密鑰、要求的權限等資訊;

(1)在application中添加開發密鑰

<application      <meta-data          android:name="com.baidu.lbsapi.API_KEY"          android:value="開發人員 key" />  
</application>

(2)添加要求的權限

<uses-permission android:name="android.permission.GET_ACCOUNTS" />  
<uses-permission android:name="android.permission.USE_CREDENTIALS" />
<uses-permission android:name="android.permission.MANAGE_ACCOUNTS" />
<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
<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.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
<uses-permission android:name="android.permission.READ_PHONE_STATE" />

第三步,在布局xml檔案中添加地圖控制項;

<com.baidu.mapapi.map.MapView      android:id="@+id/bmapView"      android:layout_width="fill_parent"      android:layout_height="fill_parent"      android:clickable="true" />

第四步,載入配置項:

 

  package com.example.mybaidumap;

  import com.baidu.mapapi.BMapManager;

  import com.baidu.mapapi.MKGeneralListener;

  import com.baidu.mapapi.map.MapController;

  import com.baidu.mapapi.map.MapView;

  import com.baidu.platform.comapi.basestruct.GeoPoint;

  import android.os.Bundle;

  import android.app.Activity;

  import android.view.Menu;

  public class MainActivity extends Activity  implements MKGeneralListener{

    private BMapManager mBMapMan = null;

    private MapView mMapView = null;

    private MapController mMapController = null;

    protected void onCreate(Bundle savedInstanceState) {

      super.onCreate(savedInstanceState);

      mBMapMan = new BMapManager(getApplication());

      mBMapMan.init(this);

      setContentView(R.layout.activity_main);

      // 擷取地圖控制項引用

      mMapView = (MapView) findViewById(R.id.bmapView);

      mMapView.setBuiltInZoomControls(true);//設定縮放

    }

?

    @Override

    protected void onDestroy() {

      super.onDestroy();

      // 在activity執行onDestroy時執行mMapView.onDestroy(),實現地圖生命週期管理

      mMapView.destroy();

    }

 

    @Override

    protected void onResume() {

      super.onResume();

      // 在activity執行onResume時執行mMapView. onResume (),實現地圖生命週期管理

      mMapView.onResume();

    }

 

    @Override

    protected void onPause() {

      super.onPause();

      // 在activity執行onPause時執行mMapView. onPause (),實現地圖生命週期管理

      mMapView.onPause();

    }

 

    @Override

    public void onGetNetworkState(int arg0) {

      // TODO Auto-generated method stub

    }

 

    @Override

    public void onGetPermissionState(int arg0) {

      // TODO Auto-generated method stub

    }

  }

  最後一步:運行你的app就可以看到百度地圖了。

 





 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.