时间:2022-08-20 08:09:44 | 栏目:Android代码 | 点击:次
Android 调用百度地图API
一、到 百度地图开发平台下载SDK
http://lbsyun.baidu.com/index.php?title=androidsdk/sdkandev-download
1、点击自定义下载
2、下载自己想要的功能包我这里选了三个
3、获取密钥
获取密钥之前我们要新建一个应用
填写好相关的信息
二、 新建一个项目工程
1、 把下载好的百度sdk中的jar包拷贝到项目的libs目录下
2、在application中添加开发密钥
3、添加所需的权限
<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" />
4、在布局xml文件中添加地图的控件和一个按钮控件;
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context="com.example.baidumap.MainActivity" > <com.baidu.mapapi.map.MapView android:id="@+id/bmapView" android:layout_width="match_parent" android:layout_height="match_parent" android:clickable="true" /> </LinearLayout>
5、编写src文件
public class MainActivity extends Activity { private MapView mMapView = null; private BaiduMap mBaiduMap; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //在使用SDK各组件之前初始化context信息,传入ApplicationContext //注意该方法要再setContentView方法之前实现 SDKInitializer.initialize(getApplicationContext()); setContentView(R.layout.activity_main); //初始化控件 initView(); } private void initView() { //获取地图控件引用 mMapView = (MapView) findViewById(R.id.bmapView); //获取百度地图 mBaiduMap = mMapView.getMap(); //普通地图 mBaiduMap.setMapType(BaiduMap.MAP_TYPE_NORMAL); //开启交通图 mBaiduMap.setTrafficEnabled(true); //卫星地图 //mBaiduMap.setMapType(BaiduMap.MAP_TYPE_SATELLITE); } @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(); } }
三、运行项目
导出带签名文件的APK,签名文件的SHA1码要和创建百度地图应用时输入的SHA1码一致
更多的功能请看百度地图的官方文档