Seit ich das Projekt mit der neuesten Version von Google Services and Libraries (9.0.0) aktualisiert habe, habe ich dieses seltsame Problem:
Notenkonsole:
:app:processDebugGoogleServices
Parsing json file: /Users/cyrilmorales/Documents/Projects/mobilemeans-punainenristi/app/google-services.json
:app:processDebugGoogleServices FAILED
Error:Execution failed for task ':app:processDebugGoogleServices'.
> Missing api_key/current_key object
Information:BUILD FAILED
build.gradle (root):
dependencies {
classpath 'com.android.tools.build:gradle:2.2.0-alpha1'
classpath 'com.google.gms:google-services:3.0.0'
}
build.gradle (App):
dependencies {
....
compile 'com.google.android.gms:play-services-analytics:9.0.0'
compile 'com.google.android.gms:play-services-gcm:9.0.0'
compile 'com.google.android.gms:play-services-maps:9.0.0'
compile 'com.google.android.gms:play-services-location:9.0.0'
...
}
apply plugin: 'com.google.gms.google-services'
Es funktioniert jedoch gut mit den Play Service-Bibliotheken in 8.4.0 und Google Services 2.1.0
Haben Sie eine Vorstellung von der Lösung?
Antworten:
Generieren Sie eine neue Konfigurationsdatei (google-services.json) unter: https://developers.google.com/cloud-messaging/android/client#get-config
Neue Konfigurationsdatei mit
"api_key": [ { "current_key": XXX } ]
im Client-BereichUpdate: oder manuell aktivierter Dienst in der Entwicklerkonsole und Generieren des Schlüssels.
quelle
Das Hinzufügen eines leeren aktuellen Schlüsselwerts in der Datei google-services.json hat dieses Problem für mich gelöst
"api_key": [{ "current_key": "" }]
quelle
Ja, wie bei der ersten Verwendung mit Firebase sehe ich das so. Klicken Sie auf Ihr App-Menü und klicken Sie auf "Verwalten".
Sie können google-services.json erneut herunterladen.
quelle
Für alle, die dieses Problem haben, müssen Sie Ihrer App vorerst einen beliebigen Dienst hinzufügen https://developers.google.com/cloud-messaging/android/client#get-config
In meinem Fall habe ich admob hinzugefügt (habe bereits Analytics und gcm) und dann wurde die Datei mit api_key generiert.
Ich denke, es ist ein Fehler und wird bald behoben sein, bis dahin mach es.
quelle
s 'api_key' value. Clearly there
ein Fehler vorliegt. Daher müssen wir verschiedene Ansätze ausprobieren, um das Problem zu lösen.Obwohl Jozka Jozins Antwort und ihre Kommentare akzeptiert wurden, ist Cloud Messaging weder verwandt noch erforderlich.
Trotzdem ist das erneute Generieren
google-services.json
der Schlüssel zur Lösung (also habe ich ihn gewählt). Folgendes habe ich getan:Wie Sie wissen, können Sie die Konfigurationsdatei für Analytics aus dem Google Developers Guide generieren .
1: Wählen Sie Ihre App.
2: Schließen Sie das Popup! Es versteckt sich ...
3: DIE OPTION VON ADMOB!
4: Natürlich auswählen und aktivieren!
5: Jetzt können wir richtig Konfigurationsdateien generieren!
6: Wir haben es geschafft! Dieses Mal sollte die Konfigurationsdatei den api_key entsprechend enthalten.
Fazit: Die Benutzeroberfläche des interaktiven Generierungswerkzeugs ist etwas verwirrend ...
quelle
Sie können die
google-services.json
Datei erneut herunterladen .Schritte zum Herunterladen:
1). Klicken Sie in der
Firebase
Konsole in Ihrer App auf das Hauptmenü .2). Klicken Sie auf Verwalten.
3). Sie finden die
Download the latest config
Dateioption, laden diegoogle-services.json
Datei herunter und ersetzen sie in Ihrer Anwendung.quelle
Zuerst in Ihrer JSON-Datei
Ersetzen
mit
Dann ist der Gradle-Build erfolgreich, aber wenn Sie Ihre Anwendung ausführen, können Fehler wie die folgenden auftreten.
Um dieses Problem zu beheben, können Sie Ihrer app.gradle-Datei Folgendes hinzufügen. Es hat bei mir funktioniert.
Bearbeiten: Es zeigte mir später einige Fehler beim Erstellen der APK-Datei. Also musste ich die json-Datei erneut herunterladen. Nach 2 Versuchen habe ich die JSON-Datei mit einem gültigen API-Schlüssel erhalten.
quelle
Wenn Sie nicht Firebase verwenden, um der richtige Link , um die Google-services.json Konfigurationsdatei zu erzeugen , tatsächlich gefunden hier .
quelle
Wenn Sie google-services.json unter https://developers.google.com/cloud-messaging/android/client#get-config neu generieren , ist es wichtig, dass Sie Cloud Messaging im Schritt "Dienste auswählen" aktivieren und das neue Google öffnen -services.json Datei sehen Sie Wörter wie
ohne diese Wörter oder ohne Wert von current_key ist nicht die richtige Datei
quelle
Ich konnte dieses Problem mit diesen Schritten lösen, die hier nicht beantwortet werden. Diese Antwort aktiviert NICHT Cloud Messaging, sondern ruft nur den Serverschlüssel ab.
Gehen Sie also zuerst zur Firebase-Konsole, dann zu den Projekteinstellungen und klicken Sie dann auf die Registerkarte "Cloud Messaging". Schauen Sie, wo "Serverschlüssel" steht und wenn kein langer Schlüssel angezeigt wird (nicht die Nummer "Absender-ID"), klicken Sie auf "Schlüssel neu generieren". Ein langer Schlüssel sollte jetzt angezeigt werden. Kopieren Sie diesen Schlüssel und platzieren Sie ihn in Ihrer Datei google-services.json unter :
"api_key": [ {"current_key" : "key goes here"} ]
.Diese Methode hat mir geholfen, während keiner der anderen gearbeitet hat. Hoffentlich hilft dies jemandem.
quelle
Klicken Sie auf Übersicht -> Zahnradsymbol -> Projekteinstellungen.
Gehen Sie zu Neueste Konfiguration herunterladen und klicken Sie auf die Schaltfläche google-service.json, um die Datei herunterzuladen und im App-Ordner zu speichern und erneut zu kompilieren. Genießen!
quelle
Sie müssen Ihrem Projekt SHA-Zertifikat-Fingerabdrücke hinzufügen und dann die Datei google-services.jason erneut herunterladen, die automatisch "api_key": [{"current_key": "xxxxxx"}] enthalten sollte.
Auf der folgenden Seite können Sie sehen, wie Sie die Fingerabdrücke generieren:
https://developers.google.com/android/guides/client-auth
Führen Sie unter Windows einfach den folgenden Befehl aus und verwenden Sie Android als Kennwort für Debug-Zwecke:
quelle
Verwenden von Firebase
Ich habe diesen Fehler erhalten, nachdem ich ein vorhandenes Projekt auf die neuen Firebase Services aktualisiert habe. Die generierte Datei google-service.json , die von der Seite mit den Firebase-Projekteinstellungen heruntergeladen wurde, enthielt nicht die
api_key
erforderliche Datei .Daher habe ich vor dem erneuten Herunterladen der Datei Abhängigkeiten zum Firebase-FCM hinzugefügt, und diesmal war der Schlüssel enthalten.
FCM (GCM) einschließen
quelle
Wenn Sie die
google-services.json
Datei nicht neu konfigurieren und herunterladen möchten, können Sie den API-Schlüssel direkt von der Firebase-Konsole abrufen. Geh einfach zuSie erhalten eine Konfiguration für Ihre Datenbank, die enthalten wird
apiKey
. Kopieren Sie einfach diesen Wert und platzieren Sie ihn in demcurrent_key
Wert, der unten mit XXX gekennzeichnet istquelle
Für Firebase-Migratoren:
Stellen Sie sicher, dass Sie mindestens einen Fingerabdruck in Ihren Projekteinstellungen hinzugefügt haben, und laden Sie die Datei google-services.json erneut herunter
quelle
Wenn Sie Firebaes verwenden, müssen Sie serverKey von der Firebase in die Datei google-services.json kopieren
Um den Serverschlüssel zu erhalten, gehen Sie zu Projektübersicht> Projekteinstellungen> CloudMessaging> Kopieren ODER generieren und kopieren Sie den Serverschlüssel.
quelle
Fügen Sie dies in Ihre Datei google-service.json ein. Sie finden es unter app / google-service.json
"api_key": [{"current_key": "your-google-api-key"}]
quelle