Androi百度地图的集成

百度地图 Android SDK是一套基于Android 2.1及以上版本设备的应用程序接口, 您可以通过该接口实现丰富的LBS功能

第一步:申请密钥,您必须先有百度帐户,才能获得开发密钥。

Key的申请地址为:点击打开链接

申请步骤:

1.登录百度账号如下图:


2.登录API控制平台,如下图:


3.点击创建应用,应用类型选择AndroidSDK,如下图


4.获取安全码

安全码的组成规则为:Android签名证书的sha1值+packagename例如:

SHA1:BB:0D:AC:74:D3:21:E1:43:67:71:9B:62:91:AF:A1:66:6E:44:5D:75


包名:com.example.dell.mycallphone,


Android签名证书的sha1值获取方式:http://blog.csdn.net/yushuangping/article/details/70257135

5.点击提交,创建应用完成,即可得到key值

第二步:获取订制的百度地图SDK

下载地址为:http://developer.baidu.com/map/index.php?title=androidsdk/sdkandev-download

第三步:AndroidStudio工程配置方法

1.在工程app/libs下放入baidumapapi_xx_vxx.jar包和so文件注意jar和so的前3位版本号必须一致如下图:


2.在src/main目录下新建jniLibs目录,放入libBaiduMapSDK_xx_vxx.so文件,工程会自动加载src目录下的so动态库,如下图


3.需要把jar包集成到工程中,选中libs下的jar包,右键->选择Add As Library,导入到工程中,对应在build.gradle生成工程所依赖的jar文件说明,如下图:



注意:集成地图SDK的应用,在打包混淆时,与地图SDK相关的方法不可混淆,否则会出现网络不可用等异常,混淆方法如下:

-keep class com.baidu.** {*;}
-keep class vi.com.** {*;}    
-dontwarn com.baidu.**

第四步:显示地图
1.在AndroidManifest中添加开发密钥、所需权限等信息;
(1)在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" />
<!-- 用于访问wifi网络信息,wifi信息会用于进行网络定位 -->
<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" />
第四步:在布局文件中添加地图控件,如下图:

第五步:在应用程序创建时,初始化SDK引用的Context全部变量,如下图:
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    //在使用SDK各组件之前初始化context信息,传入ApplicationContext
    //注意该方法要再setContentView方法之前实现
    SDKInitializer.initialize(getApplicationContext());
    setContentView(R.layout.activity_main);
    //获取地图控件引用
  mMapView = (MapView) findViewById(R.id.bmapView);

}

@Override
protected void onResume() {
    super.onResume();
    //在activity执行onResume时执行mMapView. onResume (),实现地图生命周期管理
    mMapView.onResume();
}

@Override
protected void onPause() {
    super.onPause();
    //在activity执行onPause时执行mMapView. onPause (),实现地图生命周期管理
    mMapView.onResume();
}

@Override
protected void onDestroy() {
    super.onDestroy();
    //在activity执行onDestroy时执行mMapView.onDestroy(),实现地图生命周期管理
    mMapView.onDestroy();
}

完成以上步骤,即可看到地图的显示

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值