android定位sdk | 百度地图api sdk-凯发k8官方旗舰厅

浏览器版本低!无法浏览完整内容,建议升级或更换浏览器。
android studio配置
下载开发文档
1. 第一步,打开/创建一个android工程

根据开发者的实际使用情况,打开一个已有android工程,或者新建一个android工程。 这里以新建一个android工程为例讲解。

2. 第二步,添加sdk(jar so)

方法一:
下载android定位sdk并解压,将libs中的jar和so放置到工程中相应的位置。
注意:android定位sdk提供了多种cpu架构的so文件(jar通用,只有一个),开发者可根据实际使用需求,放置所需so到对应的工程文件夹内。
下图为android定位sdk文件结构示意图:

下图为android定位sdk放置到android工程中的示意图,这里仅以arm64-v8a为例:

注意:
1. 如果开发的是系统应用,除了需要在工程中配置so文件,还需要手动把对应架构的so文件拷贝到/system/lib下,如果是64位系统,则需要将64位的so文件拷贝到/sytem/lib64下。
2. 新版本的定位sdk,开发者除了要更新jar包之外,同时需要关注so文件是否有更新。如果so文件名称改变,即so文件有更新,开发者要及时替换掉老版本,否则会导致定位失败。

配置build.gradle文件,注意设置sourcesets。

sourcesets{
main{
jnilibs.srcdir 'libs'
jni.srcdirs =[]//disable automatic ndk-build
}
}
dependencies {
compile filetree(dir:'libs', include:['*.jar'])
androidtestcompile('com.android.support.test.espresso: espresso-core:2.2.2',{
exclude group:'com.android.support', module:'support-annotations'
})
compile 'com.android.support: appcompat-v7:25.1.0'
testcompile 'junit: junit: 4.12'
}

方法二:
注意:目前gradle中集成sdk只支持国内版本如果需要google 渠道版本sdk 请到凯发k8官方旗舰厅官网下载一体化包
通过gradle 集成sdk
1、在project的build.gradle文件中配置repositories,添加mavencentral仓库地址

配置如下:

allprojects {
repositories {
mavencentral()
}
}

2、在主工程的build.gradle文件配置dependencies

sdk引入依赖
地图组件implementation 'com.baidu.lbsyun:baidumapsdk_map:7.5.4'
检索组件implementation 'com.baidu.lbsyun:baidumapsdk_search:7.5.4'
工具组件implementation 'com.baidu.lbsyun:baidumapsdk_util:7.5.4'
步骑行组件implementation 'com.baidu.lbsyun:baidumapsdk_map-bwnavi:7.5.4'
基础定位组件implementation 'com.baidu.lbsyun:baidumapsdk_location:9.3.7'
全量定位组件implementation 'com.baidu.lbsyun:baidumapsdk_location_all:9.3.7'
驾车导航组件implementation 'com.baidu.lbsyun:baidumapsdk_map-navi:7.5.4'
驾车导航 步骑行导航implementation 'com.baidu.lbsyun:baidumapsdk_map-allnavi:7.5.4'
tts组件implementation 'com.baidu.lbsyun:navitts:3.2.8'
全景组件implementation 'com.baidu.lbsyun:baidumapsdk_panorama:2.9.0'

3、主工程的build.gradle文件在project目录中位置:

以下是基础定位组件相关依赖的示例, 配置如下:

android {
defaultconfig {
ndk {
// 设置支持的so库架构(开发者可以根据需要,选择一个或多个平台的so)
abifilters "armeabi","armeabi-v7a","arm64-v8a","x86","x86_64"
}
}
}
dependencies {
implementation 'com.baidu.lbsyun:baidumapsdk_location:9.1.8'
}

注意:在gradle依赖时如果同时使用多个组件时,部分组件会产生冲突,在使用时根据自己的项目需求去组合,以下是会产生冲突的组件。

组件依赖备注
基础定位组件implementation 'com.baidu.lbsyun:baidumapsdk_location:9.1.8'选其一
全量定位组件implementation 'com.baidu.lbsyun:baidumapsdk_location_all:9.1.8'
地图组件implementation 'com.baidu.lbsyun:baidumapsdk_map:7.4.0'这些组件中都包含了baidumapsdk_map组件,根据需求选其一
步骑行组件implementation 'com.baidu.lbsyun:baidumapsdk_map-bwnavi:7.4.0'
驾车导航组件implementation 'com.baidu.lbsyun:baidumapsdk_map-navi:7.4.0'
驾车导航 步骑行导航implementation 'com.baidu.lbsyun:baidumapsdk_map-allnavi:7.4.0'
3. 第三步,添加ak

android定位sdk自v4.0版本起,需要进行ak鉴权。开发者在使用sdk前,需完成ak申请,并在androidmanifest.xml文件中,正确填写ak。ak如何获取?点击这里了解详情。
在application标签中增加如下代码:

<meta-data
android:name="com.baidu.lbsapi.api_key"
android:value="ak">
</meta-data>

如下图所示:

locationclient.setkey(xxxxxx);
可在使用该接口与androidmanifest.xml中配置ak值两种方法中任选一样进行设置。

4. 第四步,添加定位权限

使用定位sdk,需在androidmanifest.xml文件中application标签中声明service组件,每个app拥有自己单独的定位service,代码如下:

<service android:name="com.baidu.location.f" android:enabled="true" android:process=":remote"></service>

除添加service组件外,使用定位sdk还需添加如下权限:

<!-- 这个权限用于进行网络定位-->
<uses-permission android:name="android.permission.access_coarse_location"></uses-permission>
<!-- 这个权限用于访问系统接口提供的卫星定位信息-->
<uses-permission android:name="android.permission.access_fine_location"></uses-permission>
<!-- 用于访问wifi网络信息,wifi信息会用于进行网络定位-->
<uses-permission android:name="android.permission.access_wifi_state"></uses-permission>
<!-- 获取运营商信息,用于支持提供运营商信息相关的接口-->
<uses-permission android:name="android.permission.access_network_state"></uses-permission>
<!-- 这个权限用于获取wifi的获取权限,wifi信息会用来进行网络定位-->
<uses-permission android:name="android.permission.change_wifi_state"></uses-permission>
<!-- 写入扩展存储,向扩展卡写入数据,用于写入离线定位数据-->
<uses-permission android:name="android.permission.write_external_storage"></uses-permission>
<!-- 访问网络,网络定位需要上网-->
<uses-permission android:name="android.permission.internet"></uses-permission>

上一篇

eclipse配置

下一篇

隐私合规接口

本篇文章对您是否有帮助?

网站地图