注册
登录百度地图开放平台 注册百度地图开发者,填写相关信息
提交成功后收到邮件
点击链接弹出如下提示就算激活成功了
申请密钥
点击申请密钥或者创建应用
填入应用相关信息
- Android Studio获取SHA1方式
-
release
在底部Terminal控制台(没有这栏,在顶部View->Tool Windows选上或者AIt+F12)中,输入:keytool -list -keystore -v -keystore + .jks文件的绝对路径keytool -list -v -keystore C:\keystore.jks
我的jks就在项目底下所以直接输入keystore.jks
然后输入密钥库口令(没印象有这东西的试试看直接回车),就成功获取我们需要的SHA1
-
debug
如果知道debug.keystore的路径,就和release的方式一样获取。还可以通过点击右侧Gradle(没有这栏,在顶部View->Tool Windows选上)->appName->Tasks->android->signingReport
等待片刻就可以在Run一栏看到我们要的debug的SAH1了
申请密钥时最好把发布版和开发版的SHA1都填上,方便我们调试。
- 包名获取
build.gradle的applicationId或者AndroidManifest的package
注意:使用Android Studio开发,如遇到applicationId 与在 AndroidManifest.xml 中定义的包名不一致的情况,以appclicationid为准。
提交成功就可以在查看应用中看到我们的应用信息
配置
前往百度地图SDK下载所需的sdk,因为我们只需要获取定位信息,所以下载基础定位的就够了
将我们下载的基础定位包解压后,将里面的东西拷贝一份到libs文件夹中,如果没有可以新建一个。
然后在gradle配置我们的libs路径(sourceSets和defaultConfig同级)
sourceSets{
main{
//说明so的路径为该libs路径
jniLibs.srcDir 'libs'
}
}
注意这边的libs是和src同级,才会生效,不同目录结构按以下修改
jniLibs.srcDirs =['src/main/libs']
然后在build.gradle添加依赖
dependencies{
api files('libs/BaiduLBS_Android.jar')
}
或者通过顶部File->Project Sturcture(Ctrl+Alt+Shift+S)打开窗口,根据图示选择需要的jar包,会自动引入上方代码,最后同步一下gradle。
如果需要混淆的,在proguard-rules.pro加入以下代码
-keep class com.baidu.** {*;}
-keep class mapsdkvi.com.** {*;}
-dontwarn com.baidu.**
使用
在AndoirdMainifest.xml的application底下添加
<!-- 声明service组件 -->
<service
android:name="com.baidu.location.f"
android:enabled="true"
android:process=":remote"></service>
<!-- AK鉴权 -->
<!-- meta-data需要写在application中 -->
<meta-data
android:name="com.baidu.lbsapi.API_KEY"
android:value="申请的密钥AK" />
加入所需的权限
<!-- 这个权限用于进行网络定位-->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<!-- 这个权限用于访问GPS定位-->
<uses-permission android:name