android 百度地图无法显示,Android Studio中使用百度地图API,不显示地图的问题解决办法...

一年前用过这个,当时也遇到很多问题,后面慢慢解决了,然而没有总结遇到的问题,现在重新做这个,又浪费了一天时间终于解决了崩溃和不显示地图的问题,记录一下

一丶将百度地图SDK添加到项目中

进入这个网址点击自定义下载之后,选择你要的功能,然后点下面的开发包,最好把示例代码也下下来,虽然官网有使用的说明,但是每次按照上面说的都没有成功过,也不知道是不是脸黑

0818b9ca8b590ca3270a3433284dd417.png

将下载的SDK加入项目

我们将下载的sdk压缩包中的libs文件夹解压出来,然后复制libs文件夹下的所有文件

0818b9ca8b590ca3270a3433284dd417.png

将复制的文件粘贴到项目的libs文件夹下

0818b9ca8b590ca3270a3433284dd417.png

总共6个,其中arm64-v8a,armeabi,armeabi-v7a,x86,x86_64里面都是so文件,而且这几个里面的so都一样,我们需要添加一下下面的BaiduLBS_Android.jar文件,右键该文件,选择Add As Library,然后点击ok

0818b9ca8b590ca3270a3433284dd417.png

二、申请AK

在这块有很多人遇到只显示网格,加载不出地图的问题,这个一般是AK申请的不对,在上面链接中,我们申请AK需要一个SHA1和包名

包名获取方式

包名可以在AndroidManifest.xml中看到,如下

0818b9ca8b590ca3270a3433284dd417.png

SHA1获取方式

进入Android Studio的命令行

0818b9ca8b590ca3270a3433284dd417.png

进入到C:\users\你的用户名.android 然后输入下面的命令:

keytool -list -v -keystore debug.keystore

有些人可能因为重装系统等原因,这个文件夹下没有debug.keystore,虽然有自己创建一个该文件的方法,但是这里不写下来,因为好像获取到的不对….

0818b9ca8b590ca3270a3433284dd417.png

输入密码之后,就能得到sha1了,如下图:

0818b9ca8b590ca3270a3433284dd417.png

申请AK的时候,如果只是自己做demo的话,SHA1填到发布版SHA1即可,然后就能获得我们这个demo的AK了

0818b9ca8b590ca3270a3433284dd417.png

0818b9ca8b590ca3270a3433284dd417.png

(如果打包的话,原来的AK就不能用了,我们需要重新设置一下发布版SHA1和开发版SHA1)

三、项目配置

在build.gradle中有一个android块,在其中加入sourceSets块,如下

android {

compileSdkVersion 25

buildToolsVersion "25.0.2"

defaultConfig {

applicationId "com.example.gao.test"

minSdkVersion 14

targetSdkVersion 25

versionCode 1

versionName "1.0"

testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

}

buildTypes {

release {

minifyEnabled false

proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'

}

}

//加入sourceSets块

sourceSets {

main {

jniLibs.srcDirs = ['libs']

}

}

}

按照上面官网的说明,将在第二步中申请到的AK复制到你的AndroidManifest.xml下,如图,放到value的值里

0818b9ca8b590ca3270a3433284dd417.png

四、不显示地图的问题解决方法

对于这个问题,一般是AK不对,也就是申请的时候,我们的SHA1和包名其中可能不对,对于包名,在AndroidManifest.xml中得到。

对于SHA1,如果按照第二步做仍然不显示地图,还有一个验证SHA1的手机软件:

下载之后,安装到手机上可以查看你手机上应用的正确的sha1和包名

0818b9ca8b590ca3270a3433284dd417.png

点击你的demo

0818b9ca8b590ca3270a3433284dd417.png

这里就能看到你正确的sha1和包名了,可以去检查一下,你申请key的时候使用的sha1和包名是否和这个一致,不一致就显示不出来地图,可以更改为正确的sha1或者重新申请一个ak,重新申请的话,别忘了修改AndroidManifest.xml中的AK值。

五、问题总结

1.程序崩溃 注意一下第三步中有没有在AndroidManifest.xml中添加sourceSets块 2.只显网格,不显示地图 1).没有联网 2).AK不对,注意申请的时候的包名和SHA1,最好的办法就是使用第四步的方法检验一下sha1和包名,和申请ak的时候是否一致,不一致用第四步得到的sha1和包名重新申请一个ak 3).第三步中注意加入的各个代码的位置是否正确

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值