推荐使用Android Studio作为Android开发工具。
在Android Studio中创建一个Android项目。
我们提供两种SDK集成方式,分别为:(1)下载SDK本地依赖,(2)通过Gradle集成SDK,具体说明如下:
普通的地图服务和包含步骑行导航的地图服务需要下载不同的开发包,点击下载开发包。只有勾选了选项才能使用对应的功能。其中,基础地图(含室内图)和步骑行导航(含基础地图)二选一即可。
1、添加jar文件
打开解压后的开发包文件夹,找到BaiduLBS_Android.jar文件将其拷贝至工程的app/libs目录下,如图:
2、添加so文件
有两种方法可以往项目中添加so文件。
方法一:在下载的开发包中拷贝需要的CPU架构对应的so文件文件夹到app/libs目录下,如图:
在app目录下的build.gradle文件中android块中配置sourceSets标签,如果没有使用该标签则新增,详细配置代码如下:
sourceSets {main {jniLibs.srcDir 'libs'}}
注意:Jar文件和so文件的版本号必须一致,并且保证Jar文件与so文件是同一版本包取出的。
方法二: 在src/main/目录下新建jniLibs目录(如果您的项目中已经包含该目录不用重复创建),在下载的开发包中拷贝项目中需要的CPU架构对应的so文件文件夹到jniLibs目录,如图:
在工程配置中需要将前面添加的jar文件集成到我们的工程中。有以下两种方法可以实现:
方法一: 在libs目录下,选中每一个jar文件(此处只有一个BaiduLbs_Android.jar)右键,选择Add As Library…,如图:
此时会发现在app目录的build.gradle的dependencies块中生成了工程所依赖的jar文件的对应说明,如下所示:
注意:最新版本的Android Studio中compile被替换为implementation,具体的写法与您的Android Studio版本有关。
方法二: 1、菜单栏选择File -> Project Structure 2、在弹出的Project Structure对话框中选中左侧的Modules列表下的app目录,然后点击右侧页面中的Dependencies选项卡。如图:
3、点击左下角加号“➕”选择Jar dependency,然后选择要添加的jar文件即可(此处为我们拷贝至libs目录下的BaiduLBS_Android.jar) 结果如图:
完成上述操作之后在app目录的build.gradle的dependencies块中生成了工程所依赖的jar文件的对应说明,见方法一引用代码截图。
注意:目前Gradle中集成SDK只支持国内版本如果需要Google 渠道版本SDK 请到官网下载一体化包。
配置如下:
allprojects {repositories {mavenCentral()}}
根据项目需求添加SDK依赖, 引入各个SDK, dependencies 配置方式如下:
SDK | 引入依赖 |
---|---|
地图组件 | implementation 'com.baidu.lbsyun:BaiduMapSDK_Map:7.6.3' |
检索组件 | implementation 'com.baidu.lbsyun:BaiduMapSDK_Search:7.6.3' |
工具组件 | implementation 'com.baidu.lbsyun:BaiduMapSDK_Util:7.6.3' |
步骑行组件 | implementation 'com.baidu.lbsyun:BaiduMapSDK_Map-BWNavi:7.6.3' |
基础定位组件 | implementation 'com.baidu.lbsyun:BaiduMapSDK_Location:9.6.4' |
全量定位组件 | implementation 'com.baidu.lbsyun:BaiduMapSDK_Location_All:9.6.4' |
驾车导航组件 | implementation 'com.baidu.lbsyun:BaiduMapSDK_Map-Navi:7.6.3' |
驾车导航+步骑行导航 | implementation 'com.baidu.lbsyun:BaiduMapSDK_Map-AllNavi:7.6.3' |
TTS组件 | implementation 'com.baidu.lbsyun:NaviTts:3.2.13' |
全景组件 | implementation 'com.baidu.lbsyun:BaiduMapSDK_Panorama:2.9.0' |
实时公交组件 | implementation 'com.baidu.lbsyun:BaiduMapSDK_RealTimeBus:7.6.3' |
根据项目需求添加SDK依赖, 引入各个SDK, dependencies 配置方式如下:
以下是地图,检索,工具组件相关依赖的示例, 配置如下:
android {defaultConfig {ndk {// 设置支持的SO库架构(开发者可以根据需要,选择一个或多个平台的so)abiFilters "armeabi", "armeabi-v7a", "arm64-v8a", "x86","x86_64"}}}dependencies {implementation 'com.baidu.lbsyun:BaiduMapSDK_Map:7.6.3'implementation 'com.baidu.lbsyun:BaiduMapSDK_Search:7.6.3'implementation 'com.baidu.lbsyun:BaiduMapSDK_Util:7.6.3'}
注意:在gradle依赖时如果同时使用多个组件时,部分组件会产生冲突,在使用时根据自己的项目需求去组合,以下是会产生冲突的组件。
组件 | 依赖 | 备注 |
---|---|---|
基础定位组件 | implementation 'com.baidu.lbsyun:BaiduMapSDK_Location:9.6.4' | 选其一 |
全量定位组件 | implementation 'com.baidu.lbsyun:BaiduMapSDK_Location_All:9.6.4' | |
地图组件 | implementation 'com.baidu.lbsyun:BaiduMapSDK_Map:7.6.3' | 这些组件中都包含了BaiduMapSDK_Map组件,根据需求选其一 |
步骑行组件 | implementation 'com.baidu.lbsyun:BaiduMapSDK_Map-BWNavi:7.6.3' | |
驾车导航组件 | implementation 'com.baidu.lbsyun:BaiduMapSDK_Map-Navi:7.6.3' | |
驾车导航+步骑行导航 | implementation 'com.baidu.lbsyun:BaiduMapSDK_Map-AllNavi:7.6.3' |
V5.1.0版本起,为了优化SDK的jar包体积,将一些Demo中用到的图片资源文件从SDK的jar包中移到了Demo的资源文件路径下,若有依赖,请在Demo中的资源路径获取,源码Demo下载。路径如下:
BaiduMapsApiASDemo/app/src/main/assets/
移除的图片资源包括以下:
Icon_bus_station.pngIcon_end.pngIcon_line_node.pngIcon_mark1.pngIcon_mark2.pngIcon_mark3.pngIcon_mark4.pngIcon_mark5.pngIcon_mark6.pngIcon_mark7.pngIcon_mark8.pngIcon_mark9.pngIcon_mark10.pngIcon_road_nofocus.pngIcon_road_yellow_arrow.pngIcon_start.pngIcon_subway_station.pngIcon_walk_route.png
现在我们的应用中已经集成了百度地图SDK,当我们在打包混淆的时候需要注意于BaiduMap SDK 相关的内容不应该被混淆,所以我们需要配置混淆文件。
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
如在上面我们创建的MapActivity项目中:
若您的代码包含debug版本并且也需要混淆的话,请在debug代码块中也添加上述代码。
-keep class com.baidu.** {*;}-keep class vi.com.** {*;}-keep class com.baidu.vi.** {*;}-dontwarn com.baidu.**
注意:保证百度类不能被混淆,否则会出现网络不可用等运行时异常
至此您已完成AndroidStudio开发环境的配置,快去开发您的第一个包含BaiduMapSDK的Android应用吧,点我开始
上一篇
下一篇
本篇文章对您是否有帮助?