Android Studio中Map Activity显示空白Google Maps问题排查
Google Maps显示空白页仅左下角有Google标志的排查方案
我来帮你一步步排查这个问题,这种情况大多是API配置或权限的细节出错,咱们逐个核对:
1. 确认Maps SDK for Android已启用
你申请了API Key,但可能没在Google Cloud Console里启用对应的服务:
- 登录Google Cloud Console,找到你的项目
- 在API库中搜索Maps SDK for Android,确保它的状态是「已启用」
- 如果没启用,点击启用后等待几分钟生效
2. 修正Manifest中的错误权限
看你的AndroidManifest.xml里有个明显的问题:
<uses-permission android:name="com.example.barcodelibrary.permission.MAPS_RECEIVE"/>
这个权限的包名是第三方的(com.example.barcodelibrary),必须替换成你自己的应用包名HereGoesthepackage.mymaptest11,而且还要在Manifest根节点添加对应的权限声明:
<!-- 先添加权限声明 --> <permission android:name="HereGoesthepackage.mymaptest11.permission.MAPS_RECEIVE" android:protectionLevel="signature" /> <!-- 再修改权限引用 --> <uses-permission android:name="HereGoesthepackage.mymaptest11.permission.MAPS_RECEIVE"/>
不过其实这个权限是旧版Google Maps的要求,现在新版本可以不用加,但如果加了就必须和包名匹配,否则会影响权限验证。
3. 核对API Key的包名与SHA-1绑定
再次确认Google Cloud Console中你的API Key的应用限制:
- 确保限制类型是「Android应用」
- 包名必须完全匹配
HereGoesthepackage.mymaptest11(注意大小写,Google控制台会严格匹配) - SHA-1必须是你当前测试用的签名文件的SHA-1(debug版和release版的SHA-1不一样,测试时要用debug的)
4. 检查API Key的限制类型
如果你的API Key设置了IP限制或者其他非Android应用的限制,那Android应用是无法调用的:
- 暂时可以取消所有限制测试,如果地图能显示了,再重新设置正确的Android应用限制
5. 查看Logcat的错误日志
打开Android Studio的Logcat,搜索关键词「Google Maps」或「Authorization」,会直接给出错误原因:
- 比如
E/Google Maps Android API: Authorization failure.说明API Key无效或权限不足 - 比如
E/Google Maps Android API: Google Maps Android API v2 only supports devices with OpenGL ES 2.0 and above.说明设备不支持(这种情况很少见)
额外小检查
- 确保你的设备/模拟器有正常的网络连接,Google Maps需要联网加载地图瓦片
- 确认
google_maps_api.xml中的API Key没有多余的空格或换行
内容的提问来源于stack exchange,提问作者Mohammed Ali
相关产品推荐
相关产品推荐

