1

我爲Android和Google Places API使用Google Maps API v2,兩者都有不同的API密鑰添加到清單,但是當我添加這兩個密鑰時,關鍵錯誤。單個Android Studio項目的多個API密鑰

是否可以爲兩個不同的API添加兩個不同的鍵,如果不是,那麼可能的解決方法是什麼?

<!-- Goolge Maps API Key --> 
    <meta-data 
     android:name="com.google.android.maps.v2.API_KEY" 
     android:value="AIzaSyD****************U6QybngOI" /> 

    <meta-data 
     android:name="com.google.android.geo.API_KEY" 
     android:value="AIzaSyA******************KDaKCEJU" /> 

回答

1

我用谷歌地圖V2和谷歌Places API的兩個相同的GEO API密鑰解決了這個問題,即地理API密鑰,可用於這兩個地方API和地圖API也是如此。

<!-- Goolge Maps API Key --> 
<meta-data 
    android:name="com.google.android.maps.v2.API_KEY" 
    android:value="AIzaSyA******************KDaKCEJU" />  

<!-- Google Places API Key --> 
<meta-data 
    android:name="com.google.android.geo.API_KEY" 
    android:value="AIzaSyA******************KDaKCEJU" />  
+0

它不適合我,我不斷地收到錯誤,你改變了別的嗎? – Alvaro

+1

不,上面的代碼片段爲我工作。 – Qasim

+0

最後對我來說只是使用geo的元數據 – Alvaro

2

你會想要使用gradle與Placeholders

<meta-data 
    android:name="com.google.android.maps.v2.API_KEY" 
    android:value="${mapsKey}" /> 

而在你的gradle產出增加

android { 
    buildTypes { 
    debug { 
     manifestPlaceholders = [ mapsKey:"AIzaSyD****************U6QybngOI"] 
    } 
    } 
} 
0

要添加發布和調試密鑰更改您的gradle文件。您首先必須在Google Developer Console中製作API密鑰。

應用插件: 'com.android.application'

android { 
signingConfigs { 

} 
compileSdkVersion 23 
buildToolsVersion "23.0.2" 
defaultConfig { 
    applicationId 'com.your.app' 
    minSdkVersion 19 
    targetSdkVersion 23 
    versionCode 1 
    versionName "1.0" 
} 
buildTypes { 
    release { 
     minifyEnabled false 
     proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     manifestPlaceholders = [ mapsKey:"AIzaxxxxxxxxxxxxxxxxxxxvcgdXNA"] 
    } 
    debug { 
     manifestPlaceholders = [ mapsKey:"AIzayyyyyyyyyyyyyyyyyyyyyyyC7NA"] 
    } 
} 
productFlavors { 
} 
} 

依賴性{ 編譯文件樹(包括:[ '的* .jar'],則dir: '庫') testCompile「的junit:junit的: 4.12' compile'c​​om.android.support:appcompat-v7:23.1.1' compile'c​​om.android.support:design:23.1.1' compile'c​​om.google.android.gms:play-services:8.4 .0' }

0

您不應該爲此使用多個鍵。您只需從開發人員控制檯爲相同API密鑰啓用兩項服務。我認爲this答案將指導您完成此過程。

相關問題