在Android中编写百度地图,可以使用百度地图SDK提供的API来实现。
首先,在项目的build.gradle文件中添加百度地图SDK的依赖:
```groovy
implementation 'com.baidu.android:baidu-map-sdk:5.2.2'
```
然后,在布局文件中添加百度地图控件MapView:
```xml
android:id="@+id/bmapView" android:layout_width="match_parent" android:layout_height="match_parent" /> ``` 接下来,在Activity中初始化百度地图,并添加地图标记点: ```java public class MainActivity extends AppCompatActivity { private BaiduMap mBaiduMap; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); // 获取地图控件引用 MapView mapView = findViewById(R.id.bmapView); // 获得地图对象 mBaiduMap = mapView.getMap(); // 设置地图中心位置 LatLng center = new LatLng(39.915071, 116.403907); MapStatusUpdate mapStatusUpdate = MapStatusUpdateFactory.newLatLng(center); mBaiduMap.setMapStatus(mapStatusUpdate); // 添加地图标记点 MarkerOptions markerOptions = new MarkerOptions() .position(center) .icon(BitmapDescriptorFactory.fromResource(R.drawable.marker)) .draggable(true); mBaiduMap.addOverlay(markerOptions); } @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 protected void onDestroy() { super.onDestroy(); // 在activity执行onDestroy时执行mMapView.onDestroy() mMapView.onDestroy(); } } ``` 以上代码中,首先获取地图控件MapView的引用,并获得地图对象BaiduMap。然后,通过MapStatusUpdateFactory来设置地图中心位置,并通过addOverlay方法来添加地图标记点。最后,在Activity的生命周期方法中调用MapView的对应方法来管理地图的生命周期。 需要注意的是,为了正确使用百度地图SDK,还需要在AndroidManifest.xml文件中添加相关的权限和服务声明: ```xml android:name=".MyApplication" ...> android:name="com.baidu.location.f" android:enabled="true" android:process=":remote"/> ```