刚刚完成对Android应用的编码,并准备将其发布到Play商店。在开发过程中,我使用我的debug.keystore获取了Google Maps API密钥,并将此密钥放在我的Manifest中,如下所示:
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="MY_API_KEY" />
但是,我现在已经使用我的发布证书签署了我的应用程序,因此从Google地图获得了一个新的API密钥。出于测试目的,有没有办法在我的Manifest中保留旧的(调试)和新的(释放)API密钥,并在运行时加载正确的一个开关?例如:
if (debug) {
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="DEBUG_API_KEY" />
}
else if (release) {
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="RELEASE_API_KEY" />
}
干杯!
答案 0 :(得分:8)
您可以对多个签名密钥甚至多个应用程序使用相同的密钥。
在API控制台上编辑允许的应用并添加SHA;包对,每行一对。
答案 1 :(得分:0)
<!-- RELEASE key -->
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="@string/release_map_key" />
<!-- DEBUG key -->
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="@string/debug_map_key" />
您可以在清单中添加多个api密钥,如上所示。但是你可以使用相同的api密钥进行调试和发布。