我处理一个奇怪的问题。我已经关注了来自论坛的多个主题并没有任何帮助。 我们正在开发一个Android应用程序,我们使用Google Maps API v2。我们正在使用Android Studio。 我的同事已在Google Developers Console上注册了我们的项目,为项目激活了Google Maps API,并为该应用程序创建了新的公钥。然后他在我们的 AndroidManifest.xml 文件中注册了该密钥:
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="OUR_KEY_VALUE" />
当他在Android手机上调试应用程序时,它对他来说非常合适。 问题是我拥有与他相同的源代码,当我在手机上调试或运行我们的应用程序时,我们使用的地图是空白的,并没有显示地图。 有趣的是,如果我的同事发送给我在Android Studio的构建期间生成的 app-debug.apk 文件,我安装它一切正常,地图就在那里。此外,当这个.apk文件安装在不同的手机上时,它工作正常。 当我使用Android Studio生成 app-debug.apk 文件并尝试将其安装在我的手机上时,地图未显示。
我们甚至为我们的应用创建了发布密钥,它的工作方式完全相同。
可能是因为我们都无法调试使用相同API密钥的应用程序? 谢谢你的帮助!
答案 0 :(得分:2)
您必须注册所有团队成员的所有密钥。 Google API控制台允许为每个Google地图密钥放置许多包/密钥。只需询问所有成员的调试证书,并为每个开发人员添加新条目<PRINT>:<PACKAGE ID>
。并非所有开发人员都必须共享调试证书。这是错的!您只需使用Google API控制台注册每个开发者。这样,即使他离开公司,您也可以轻松禁用开发者访问权限。
答案 1 :(得分:0)
对于未来的用户:
调试/运行应用时,用于生成debug/release keystore
的{{1}}必须相同。