在android studio直接运行时百度地图显示,真机打包apk时地图不显示的问题

在Android Studio中开发使用百度地图的应用时,直接运行显示正常,但打包成APK后地图无法显示。问题出在申请的百度地图API Key对应的是debug.keystore的SHA1,而非发布时使用的签名文件的SHA1。解决方案包括生成自己的签名文件,获取其SHA1,然后在百度地图开发者后台更新SHA1并获取新Key,将新Key替换AndroidManifest.xml中的旧Key,打包后即可正常显示地图。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

当我在用百度地图开发的时候,在android studio中直接运行时,位置信息可以显示,但是当给app打包成apk文件安装到手机上时却不能显示地图,只显示网格,相信很多人都会遇到这个问题,最后问题解决了,借此记录一下, 这个问题原因就是申请百度key的时候填写的SHA1也就是指纹证书有问题。我们开发的时候应该都是按照百度开放平台上介绍的流程去申请的,这当然是没问题的,但是当直接打包安装apk的时候就有问题了,因为按照百度的流程申请到的指纹证书只针对本地开发环境存在的默认签名文件debug.keystore的指纹证书。
但是我们在开发一个apk发布在应用商店供别人下载时,需要我们自己对我们的app进行签名,并拿到签名文件,这个签名文件是我们自己apk的签名文件,和开发环境默认的签名文件不一样,指纹证书SHA1也不同。
所以当我们用自己的签名文件导出apk时,百度地图的key应该是我们的签名文件的指纹证书,如果还是用开发环境debug.keystore的SHA1申请的key,就会出现不显示地图的情况,正确的配置流程如下:

第一步:先从android studio中生成一个自己的签名文件,安卓的签名文件格式为.jks,例如IMDemo.jks
对我们自己的项目进行打包

新建一个keystore

新建签名文件完成

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值