it-swarm.com.de

GoogleService konnte nicht initialisiert werden

Ich verwende Google Maps in meiner Android-Anwendung. Ich habe den Schlüssel erstellt und die erforderlichen Berechtigungen in der Manifestdatei hinzugefügt. Aber bald starte ich die Anwendung. Im Debugger erhalte ich folgende Nachricht:

GoogleService konnte nicht initialisiert werden, Status: 10, Erwartetes erwartet resource: 'R.string.google_app_id' zum Initialisieren von Google-Diensten. Mögliche Ursachen sind fehlende google-services.json oder com.google.gms.google-services-Plugin.

Ich bin mir nicht sicher, was falsch ist. Die Map funktioniert einwandfrei und ich kann sie problemlos nutzen. Meine Gradle-Datei hat diesen Eintrag:

"com.google.Android.gms: play-services: 8.4.0" kompilieren

Worüber beschwert es sich und wie kann ich es lindern?

109
Zach

Sie müssen die Konfigurationsdatei (google-services.json), die von developer.google.com generiert wurde, wie im zweiten Schritt der offiziellen Dokumente hier erwähnt - ablegen.

Der Prozess ist einfach

  1. Sie können Ihr Projekt auswählen oder ein neues erstellen.
  2. Nachdem Sie die gewünschten Dienste (in diesem Fall den Karten-Dienst) ausgewählt haben, können Sie die Konfigurationsdatei erstellen.

    Für Benutzer, die zu Firebase-Projekten migriert wurden, können sie dasselbe erhalten, indem sie zu Firebase Console gehen, ihr Projekt auswählen und unter Einstellungen die Konfigurationsdatei finden.

  3. Dann wie in Schritt 3 der offiziellen Dokumente hier zitiert.

    Kopieren Sie die soeben heruntergeladene google-services.json-Datei in das Verzeichnis app/oder mobile/Ihres Android

P.S: Für Leute, die diese Antwort ablehnen, hinterlassen Sie bitte einen Kommentar, warum Sie die Abstimmung ablehnen.

36
Nishant.

[Von Product Manager @ Google]

Sie können dieses Problem beheben, indem Sie die google-services.json-Datei für Ihre Android-App herunterladen und kopieren, indem Sie die folgenden Schritte ausführen:

  • Wählen Sie Ihren App-/Projektnamen und den Android-Paketnamen unter diesem Link aus und klicken Sie auf Continue to Choose and configure services.
  • Klicken Sie auf Continue to Generate Configuration files.
  • Laden Sie google-services.json herunter und kopieren Sie die Datei in das Modulverzeichnis app/ oder mobile/ Ihres Android-Projekts.

Wenn Sie Ihr Google-Projekt zuvor in Firebase importiert haben, können Sie Die aktualisierte Datei google-services.json von der Firebase-Konsole unter Projekteinstellungen abrufen.

NICHT KOPIEREN die PROJECT_NUMBER, wie von einer der anderen Antworten vorgeschlagen, da die google_app_id auf Ihre App innerhalb eines Projekts und nicht auf das Projekt selbst verweist.

52
Sriram

In meinem Fall bestand die Ursache dieses Fehlers darin, dass das Google Services-Plugin für Gradle und die Play Services-Bibliothek inkompatible Versionen waren. Anweisungen für kompatible Versionen:

1) Fügen Sie die Abhängigkeit zu Ihrem build.gradle auf Projektebene hinzu:

classpath 'com.google.gms:google-services:1.5.0-beta2'

2) Fügen Sie das Plugin zu Ihrem build.gradle auf App-Ebene hinzu:

apply plugin: 'com.google.gms.google-services'

3) Wenn Sie Android Studio verwenden, ist dies die Zeichenfolge, die dem Abhängigkeitsabschnitt der Datei build.gradle Ihrer Anwendung hinzugefügt wird:

dependencies {
  compile "com.google.Android.gms:play-services:8.3.0"
}

Quelle: https://developers.google.com/cloud-messaging/Android/client

10
13rac1

Ich traf das gleiche Problem und löste es der offiziellen Lösung .

Hier sind die Schritte:

  1. holen Sie sich die Konfigurationsdatei google-services.json von this link .

  2. Kopieren Sie die soeben heruntergeladene google-services.json-Datei in das app/oder mobile/-Verzeichnis Ihres Android Studio-Projekts.

  3. Fügen Sie die Abhängigkeit zu Ihrem build.gradle auf Projektebene hinzu:

    classpath 'com.google.gms:google-services:1.5.0-beta2'
    
  4. Fügen Sie das Plugin zu Ihrem build.gradle auf App-Ebene hinzu:

    apply plugin: 'com.google.gms.google-services'
    
  5. Fügen Sie diese Abhängigkeit zu Ihrem build.gradle auf App-Ebene hinzu:

    dependencies {
        compile "com.google.Android.gms:play-services:8.3.0"
    }
    
3
Will

Für Xamarin/Visual Studio Mac musste ich dies an der Unterseite meines Droid.csproj hinzufügen

<Target Name="ProcessGoogleServicesJson" Condition=" '@(GoogleServicesJson)' != '' AND '$(AndroidApplication)' == 'True' AND '$(DesignTimeBuild)' != 'True'" BeforeTargets="$(ProcessGoogleServicesJsonBeforeTargets)" AfterTargets="$(ProcessGoogleServicesJsonAfterTargets)">
<Message Text="Using ProcessGoogleServicesJson override" Importance="high" />
<ProcessGoogleServicesJson GoogleServicesJsons="@(GoogleServicesJson)" IntermediateOutputPath="$(IntermediateOutputPath)" MonoAndroidResDirIntermediate="$(MonoAndroidResDirIntermediate)" AndroidPackageName="$(_AndroidPackage)">
    <Output ItemName="_AndroidResourceDest" TaskParameter="GoogleServicesGeneratedResources" />
    <Output ItemName="FileWrites" TaskParameter="GoogleServicesGeneratedResources" />
</ProcessGoogleServicesJson>
<ItemGroup>
    <FileWrites Include="$(IntermediateOutputPath)\ProcessGoogleServicesJson.stamp" />
</ItemGroup>

https://github.com/xamarin/GooglePlayServicesComponents/issues/64

1
stepheaw

Das passiert mir auch. In meinem Fall liegt es daran, dass Android Studio versucht hat, Code in meine Hauptaktivität einzufügen. Durch das Entfernen des Codes wird der Fehler behoben

Eingefügter Code handelt von App-Indexierung:

https://developers.google.com/app-indexing/Android/publish

0
Superbiji

Für diejenigen, die mit diesem Problem konfrontiert sind, auch wenn die Wiedergabedienste korrekt eingerichtet und die google-services.json-Datei im project/app-Ordner abgelegt wurden, lautet die eigentliche Lösung 

Build > Rebuild Project

Möglicherweise aufgrund der Tatsache, dass Zeichenfolgen aus der Json-Datei nicht in kompilierte Ressourcen integriert werden, bis eine vollständige Neuerstellung durchgeführt wird.

0
anandbibek

Ein quick fix, das ich verwendet habe, ist das Deaktivieren der Signatur. Wenn Sie keinen Produktionscode erstellen möchten, können Sie Ihre Buildvariante auf debug, localOldDebug oder localDebug einstellen.

Klicken Sie unten links in Android Studio auf Build Variants.

How-to-Disable-Generated-Apk-Android-Studio

0
Dudas

Sie können versionCode und versionName Ihrer App in Ihrer Gradle-Datei ändern.

0
F. Milliard

Ich hatte damals das gleiche Problem. Es war in der Lage, es zu lösen, indem nur die erforderliche Spieldienstebibliothek verwendet wurde, die in meinem Fall GCM war.

Anstelle von com.google.Android.gms:play-services:8.4.0 verwende ich com.google.Android.gms:play-services-gcm:8.4.0. hier für weitere Informationen; Dies löst auch das Multidex-Problem.

Dann habe ich sowohl den Ansatz von @Radix als auch den von Alexander angewandt, um die Meldung zu entfernen, dass GCM im Logcat bezüglich google-services.json ausgegeben wurde.

0
SanicBoom