Cómo utilizar la API de Baidu
1) Descargue el kit de desarrollo de Baidu Map Mobile API (Android)
Para utilizar Baidu Map API en aplicaciones de Android, debe hacer referencia al kit de desarrollo de Baidu Map API en el proyecto. El paquete de desarrollo contiene dos archivos: baidumapapi.jar y libBMapApiEngine.so.
2) Solicite la clave API Al igual que con la API de mapas de Google, también debe obtener la clave API correspondiente antes de utilizar la API de mapas de Baidu. La clave API de Baidu Map está asociada con su cuenta de Baidu, por lo que debe tener una cuenta de Baidu antes de poder obtener la clave
API y la clave está relacionada con el nombre del programa al que hace referencia la API.
La aplicación de la clave API de Baidu es mucho más sencilla que la de Google. De hecho, siempre que tenga una cuenta de Baidu, no debería llevarle más de 30 segundos completar la solicitud de la clave API.
3) Crear un proyecto de Android
Una cosa debe enfatizarse aquí: la API de la versión móvil de Baidu Maps admite sistemas Android 1.5 y superiores, por lo que el proyecto que creemos debe estar basado en Android. SDK 1.5 y superior. Una vez creado el proyecto, copie baidumapapi.jar y libBMapApiEngine.so al directorio raíz del proyecto y al directorio libs/armeabi respectivamente, y seleccione "Agregar JAR" en las propiedades del proyecto-gt Java Build Path-gt; y seleccione baidumapapi.jar, para que pueda utilizar Baidu Map API en su aplicación.
La estructura de directorios completa del proyecto se muestra en la siguiente figura:
4) Agregue el control de mapa (res/layout/main.xml) en el archivo de diseño
5) Cree una actividad que hereda com.baidu .mapapi.MapActivity
paquete com.liufeng.baidumap;
importar android.graphics.drawable.Drawable;
importar android .os.Bundle;
p>
importar com.baidu.mapapi.BMapManager;
importar com.baidu.mapapi.GeoPoint;
importar com.baidu.mapapi.MapActivity;
importar com.baidu.mapapi.MapController;
importar com.baidu.mapapi.MapView;
clase pública MainActivity extiende MapActivity {
BMapManager privado mapManager
MapView privado mapView
MapController privado
@Override
public void onCreate(Bundle saveInstanceState) {
p>super.onCreate(savedInstanceState);
setContentView(R.layout.main);
/ / Inicializar MapActivity
mapManager = new BMapManager (getApplication());
// El primer parámetro del método init debe completarse con la clave API aplicada
mapManager.init("285B415EBAB2A92293E85502150ADA7F03C777C4", null);
super.initMapActivity(mapManager);
mapView = (MapView) findViewById(R.id.map_View);
// Establece el modo del mapa en mapa de tráfico
mapView.setTraffic(true);
// Establece y habilita el control de zoom integrado
mapView.setBuiltInZoomControls(true);
// Usar Construir un GeoPoint (latitud, longitud) dada la latitud y longitud
GeoPoint point = new GeoPoint((int) (47.118440 * 1E6), (int) (87.493147 * 1E6));
//Crear creador de marcadores
Marcador dibujable = this.getResources().getDrawable(R.drawable. ico
nmarka);
// Definir la posición y los límites para el creador
Marker.setBounds(0, 0, Marker.getIntrinsicWidth(), Marker.getIntrinsicHeight()); p>
// Obtener el objeto controlador de mapa para controlar MapView
mapController = mapView.getController();
// Establecer el centro del mapa
mapController.setCenter(point);
// Establece el nivel de zoom predeterminado del mapa
mapController.setZoom(12);
} p>
@Override
booleano protegido isRouteDisplayed() {
devuelve falso;
}
@Override
protected void onDestroy() {
if (mapManager != null) {
mapManager.destroy();
mapManager = null;
}
super.onDestroy();
}
@Override
protected void onPause() {
if (mapManager != null) {
mapManager.stop();
}
super.onPause();
}
@Override
protected void onResume() {
if (mapManager != null) {
mapManager.start ();
}
super.onResume()
}
}
6) en Configuración en AndroidManifest.xml
lt;?xml version="1.0" encoding="utf-8"?gt;
lt;manifest xmlns: android="
paquete="com.liufeng.baidumap"
android: versionCode="1"
android: versionName="1.0"gt;
lt ;aplicación android:icon="@drawable/icon" android:label="@string/app_name"gt;
lt;actividad android:name=".MainActivity" android:label= "@string/ nombre_aplicación"gt;
lt;intent-filtergt;
lt; acción android: nombre="android.intent.action.MAIN" /gt;
lt; categoría android: nombre="android.intent.category.LAUNCHER" /gt; p> p>
lt;/intent-filtergt;
lt;/activitygt;
lt;/applicationgt;
lt;uses-sdk android: minSdkVersion="4" /gt;
lt; usa-permiso android: name="android.permission.ACCESS_NETWORK_STATE"
lt; name= "android.permission.ACCESS_FINE_LOCATION" /gt;
lt;usa-permiso android: name="android.permission.INTERNET" /gt;
lt;usa-permiso android: nombre="android.permission.WRITE_EXTERNAL_STORAGE" /gt;
lt; utiliza-permiso android: nombre="android.permission.ACCESS_WIFI_STATE"
lt; -permiso android: nombre="android.permission.CHANGE_WIFI_STATE"
lt; utiliza-permiso android: nombre="android.permission.READ_PHONE_STATE"
lt; ; / manifestgt;
7) Resultados en ejecución