最終效果如:
這個需要詳細說下,准備工作較為繁瑣。
第一步:去百度申請一個開發者賬號,新建一個android應用,會讓你輸入開發者SHA1,目前我只拿到開發版SHA1,發布版那里也填的是這個。
獲取方法如:
在C:\Users\Administrator\.android下面呼出命令行,輸入
keytool -list -v -keystore debug.keystore,會得到三種指紋證書,選取SHA1類型的證書(密鑰口令是android)
紅線地方就是,填進adroid sdk申請界面,會得到一個AK碼,復制下來。
第二步:使用as新建一個android項目,加入ak碼和權限在AndroidManifest.xml文件中
(1)在application中添加開發密鑰
<application> <meta-data android:name="com.baidu.lbsapi.API_KEY" android:value="AK key" /> </application>
2)添加所需權限
<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" />
第三步:引入jar包
在http://lbsyun.baidu.com/index.php?title=androidsdk/sdkandev-download 點擊一鍵下載,去
下面把那7個jar包全部復制到項目目錄下的lib目錄中:
然后在源代碼目錄下新建jniLibs文件夾,把剛才剩下的那幾個文件夾復制過來:
第四步:在主布局文件中加入mapview:
<com.baidu.mapapi.map.
TextureMapView
android:id="@+id/bmapView"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:clickable="true" />
特別注意重點標示部分。
布局后台代碼中加入:

package com.example.baidumapdemo; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import com.baidu.mapapi.SDKInitializer; import com.baidu.mapapi.map.MapView; import com.baidu.mapapi.map.TextureMapView; public class MainActivity extends AppCompatActivity { TextureMapView mMapView = null; @Override protected void onCreate(Bundle savedInstanceState) { // super.onCreate(savedInstanceState); //setContentView(R.layout.activity_main); super.onCreate(savedInstanceState); //在使用SDK各組件之前初始化context信息,傳入ApplicationContext //注意該方法要再setContentView方法之前實現 SDKInitializer.initialize(getApplicationContext()); setContentView(R.layout.activity_main); //獲取地圖控件引用 mMapView = (TextureMapView) 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(); } }
完整源代碼下載
獲取發布版shai:keytool -exportcert -list -v -keystore C:\Users\Administrator\.android\mykey.jks 其中mykey是自己隨意創建的,記住密碼
獲取開發板shai:keytool -exportcert -list -v -alias androiddebugkey -keystore %USERPROFILE%\.android\debug.keystore 密碼:android