Es konnte keine gültige GoogleService-Info.plist in Ihrem Projekt gefunden werden

83

Wenn ich meinen schnellen 3.2-Code mit Xcode 9 Beta 4 ausführe, ist dies der Fehler, den ich bekomme:

*** Terminating app due to uncaught exception 'com.firebase.core', reason: '[FIRApp configure]; (FirebaseApp.configure() in Swift) could not find a valid GoogleService-Info.plist in your project. Please download one from https://console.firebase.google.com/.'

Ich habe bereits eine GoogleService-Info.plist-Datei, die genau so benannt ist, wie sie sollte, und die gültig ist.

Gibt es eine Prüfung für Firebase oder ähnliches?

Adam Eliezerov
quelle
11
Überprüfen Sie, ob das Ziel überprüft wurde oder nicht, indem Sie im rechten Bereich auf Plist-Datei klicken. Überprüfen Sie auch, ob sich der physische Speicherort in Ihrem Projektordner befindet
Prashant Tukadiya,
Bitte entfernen Sie GoogleService-Info.plistaus Ihrem Projekt und versuchen Sie erneut, es hinzuzufügen.
Sanjay Shah
@ MikeAlter Hat das vielleicht damit zu tun, dass ich xcode 9 beta 4 verwende?
Adam Eliezerov
Die Betas waren insofern fehlerhaft: Ganz einfach, sie fügten den Gegenstand oft nicht automatisch dem Ziel hinzu, das auf Bilder, Skripte usw. angewendet wurde. ganz einfach - wählen Sie rechts "info" und klicken Sie auf das Feld "Zum Ziel hinzufügen". es scheint alles in X9 Release behoben worden zu sein.
Fattie

Antworten:

212

Entfernen Sie die Google-Info.plistDatei aus Ihrem Projekt und versuchen Sie, sie aus dem Optionsmenü Ihres Projektordners hinzuzufügen.

BEARBEITEN: So entfernen Sie eine Plist-Datei Xcode 10 Fehler: Mehrere Befehle erzeugen

Harshal Jadhav
quelle
4
Ja, das ist die Lösung. Scheint ein Fehler in der Xcode 9 Beta zu sein.
Adagio
10
Stellen Sie außerdem sicher, dass die Google-Info.plistDatei die richtigen Zielmitgliedschaften hat.
Tom Spee
Ist das ein Fehler, bei dem Sie die Datei nicht einfach per Drag & Drop verschieben können, oder unterscheidet sich die Methode "Dateien hinzufügen" vom normalen Ziehen und Ablegen?
André Kuhlmann
1
@ AndréKuhlmann Es scheint, dass das Ziehen und Ablegen der Datei der Fehler ist. Wenn ich die plist-Datei in das Stammverzeichnis meines Projekts gezogen habe, ist der Speicherort der Datei der Pfad aus dem Ordner "Downloads". Also musste ich "Dateien hinzufügen", damit es funktioniert.
Govgo
Behoben
23

Ich hatte das gleiche Problem.

Klicken Sie in Ihrem Projekt auf die Googleservice-info.plist und aktivieren Sie im Inspektor die Option Zielmitgliedschaft für App. Das hat es für mich behoben.

Dies ist der Grund für diesen Absturz. Das Entfernen der Datei und das erneute Hinzufügen ist eine weitere Möglichkeit, wie in den obigen Antworten vorgeschlagen. Aber die eigentliche Ursache ist dies und dies ist der richtige Weg, um es zu lösen.

Weitere Informationen finden Sie im Bild unten:

Geben Sie hier die Bildbeschreibung ein

Arjun Kalidas
quelle
16

Sobald Sie die Datei zum Projekt hinzugefügt haben, müssen Sie sie möglicherweise auch zu Build-Phasen im Abschnitt Quellen kompilieren hinzufügen .

Andrew Ko
quelle
1
Das hat es für mich behoben! Thanx
Gary mansted
1
Auch für mich behoben
behoben
1
Das hat es für mich behoben! Vielen Dank, Andrew
Aman Pandey
4

Wenn Sie mehrere Umgebungen haben (Produktion, Entwicklung, Staging), benötigen Sie jeweils eine andere Google.plist.

Sie müssen alle den gleichen Namen haben.

Um dies zu umgehen, erstellen Sie Ordner für jede dieser Dateien (einen für jede Umgebung) und legen Sie sie in den entsprechenden Ordnern ab.

Wenn Sie die Dateien aus dem Finder nach Xcode ziehen, stellen Sie sicher, dass Sie unter Zielmitgliedschaft für jede die richtige Umgebung auswählen

Das reicht aus und ermöglicht es Ihnen, Umgebungen separat zu erstellen. Insbesondere, wenn jede Umgebung eine andere Bundle-ID hat.

Kakubei
quelle
3

Das Neustarten von Xcode hat bei mir funktioniert, keine der oben genannten Optionen hat funktioniert.

Nasir Khan
quelle
2

Leider oder zum Glück ist der angegebene Fehler sehr genau. Derzeit ist nur eine Option verfügbar. Ich platziere die Google-Info.plistDatei richtig in Ihrem Projekt. Versuchen Sie, das zu entfernen und erneut hinzuzufügen. Überprüfen Sie außerdem, ob ein Ziel ausgewählt ist oder nicht.

Sivajee Battina
quelle
Wo ist die Projekteigenschaft?
Adam Eliezerov
2
  1. Stellen Sie sicher, dass der Name der Datei korrekt ist, dh: "GoogleService-info.plist "
  2. Fügen Sie es dem Projekt in Mac finderunter dem Projektnamen hinzu und ziehen Sie es dann in das Projekt, um darauf zu verweisen.
  3. Schließlich, wie Silvajee erwähnte, gehen Sie zum file inspector für die Plist-Datei und unter target membership, um sie als Teil der aufzunehmen project.
Steve
quelle
Können wir diesen Dateinamen umbenennen: GoogleService-info.plist? Zu so etwas wie GoogleService-info_myapp.plist
Shaqir sagte
2

Diese Schritte haben mein Problem gelöst. Folge diesen. 1.Sie müssen die Datei GoogleService-Info.plist per Drag & Drop in Ihr Projekt an einem Speicherort wie z. B. Freigegebene Ressourcen ziehen. Wenn Sie die Datei erfolgreich hinzugefügt haben, sollten Sie auch sicherstellen, dass Sie sie in die Projekterstellung aufnehmen:

2.Überprüfen Sie im Abschnitt "Phasen erstellen" Ihres Projekts, ob Ihr Projekt GoogleService-Info.plist enthält.

3. Überprüfen Sie den Dateinamen doppelt. Der Dateiname muss genau GoogleService-Info.plist sein. Häufige Rechtschreibfehler sind GoogleServices-Info.plist und GoogleService-info.plist - Groß- und Kleinschreibung beachten und nur genau benannt funktionieren.

Shahzaib Maqbool
quelle
Vielen Dank. Meins wurde GoogleService-info anstelle von Info genannt. Oh, die Kopfschmerzen, die mich das verursachte!
Anish
2

Wenn Sie mit Ionic arbeiten, müssen Sie zuerst Ihre .xcworkspace-Datei in Xcode öffnen und dann die Datei GoogleService-info.plist in den Ordner Ressourcen ziehen.

Die meisten Online-Tutorials erklären diesen Teil aus irgendeinem Grund nicht gut.

Rufen Sie Shahzaib Maqbool an, weil sein Kommentar mir geholfen hat, dies für mein Projekt zu bekommen.

Bennybear
quelle
2

Die folgende Einstellung kann meinen Compilerfehler beheben. 1. Zu "Dateien kopieren" hinzufügen. 2. Nicht zu "Bundle-Ressourcen kopieren" hinzufügen.

Geben Sie hier die Bildbeschreibung ein

JimmyChang
quelle
1
  1. Tatsächlich tritt dieser Fehler auf, wenn sich die Datei GoogleService-Info.plist nicht in unserem Projektordner befindet, sondern nur einen Verweis auf die Datei enthält, in die sie heruntergeladen wurde. Die Lösung besteht darin, den Verweis auf diese Datei zu entfernen und sie erneut per Drag & Drop oder mithilfe der Option "Dateien hinzufügen ..." zu Ihrem Projektordner hinzuzufügen, indem Sie mit der rechten Maustaste auf Ihren Projektordner klicken. Überprüfen Sie außerdem erneut, ob sich die Datei in Ihrem Projektordner befindet, da sonst erneut ein Fehler auftritt.

  2. Vergessen Sie nicht, zu überprüfen, ob Ihre "GoogleService-Info.plist" -Datei denselben Namen wie im Fehlerfall hat. Andernfalls benennen Sie sie um.

Ashvini
quelle
1

Ein paar Mal sauber zu machen und dann zu bauen, hat für mich funktioniert.

Claytronicon
quelle
1

1 - Öffnen Sie "GoogleService-Info.plist" und ändern Sie eine oder in und

2 - Öffnen Sie die Xamarin-Lösung erneut. 3 - Sie sollte jetzt funktionieren

lalit Maheshwari
quelle
1

Ich habe das Problem gelöst, indem ich das Projekt aus Firebaseund GoogleService-Info.plistaus dem Projekt gelöscht habe . Nachdem ich das Projekt erneut hinzugefügt Firebaseund hinzugefügt habe, hat die neue GoogleService-Info.plistDatei für mich funktioniert.

Flügel
quelle
1

Dieser Fehler tritt beim Herunterladen des Google-Dienstes mehr als einmal auf. Wenn wir das erste Mal von Firebase herunterladen, ist es wie GoolgeService-Info.Plist. Wenn Sie erneut herunterladen, wird das kommen GoogleService-Info(1).Plist. Wir müssen entfernen (1)aus GoogleService-Info(1).Plist.

kurupareshan
quelle
1

Wir müssen sicherstellen, dass der vollständige Pfad in Xcode korrekt ist. Es wäre besser, es von Anfang an hinzuzufügen. Wenn Sie dies bereits getan haben, fahren Sie mit Schritt 5 fort.

  1. Beenden Sie Xcode.
  2. Stellen Sie sicher, dass der Dateiname "GoogleService-Info.plist" korrekt ist.
  3. Fügen Sie die Plist-Datei zum Projektordner hinzu. Gleiches Level mit Podfile, .xcworkspace usw.
  4. Öffnen Sie Xcode und identifizieren Sie die .plist-Datei in Project Navigator. Wenn es nicht da ist, klicken rechten Maustaste und klicken Sie auf Neue Datei zu "[Projektname]" hinzufügen . Stellen Sie sicher, dass Sie unten auf Projektname klicken. Zu Zielen hinzufügen Option .
  5. Klicken Sie im Projektnavigator auf GoogleService-Info.plist. Wählen Sie Dateiinspektor rechten Navigator den aus. Stellen Sie sicher, dass der vollständige Pfad korrekt ist. Wenn nicht, klicken Sie auf das Ordnersymbol und wählen Sie die .plist-Datei in der Projektdatei aus.
  6. Bauen. Wenn dies immer noch nicht funktioniert, beenden Sie Xcode und erstellen Sie erneut.
active_sludge
quelle
Stellen Sie sicher, dass das Ziel für die GoogleService-Info.plist ausgewählt ist und mit dem Ziel übereinstimmt, auf dem Sie aufbauen.
Swati
1

Geben Sie hier die Bildbeschreibung ein

Fügen Sie die GoogleService-Info.plist in Build-Phasen als Screenshot oben hinzu:

junnyea
quelle
0

Gehen Sie zu den Erstellungsphasen und fügen Sie eine Datei zu den Ressourcen des Kopierpakets hinzu. Das ist es.

Akshaykumar Maldhure
quelle
0

Löschen Sie alle anderen zuvor installierten "GoogleService-Info.plist" -Dateien. In meinem Fall war es bei der Installation der Name "GoogleService-Info.plist-2", da ich eine andere Datei im selben Ordner installiert hatte. Es sieht so aus, als würde dies zu Verwirrung bei der Feuerbasis führen. Ich habe alle alten Dateien gelöscht und den Namen der aktuellen Datei genau in "GoogleService-Info.plist" geändert. es funktionierte.

Harbi2020
quelle
0

In meinem Fall ist etwas schief gelaufen, als ich Konflikte in project.pbxproj zusammengeführt habe

In GoogleService-Info.plist -> wurde im rechten Bereich keine Zielmitgliedschaft ausgewählt, und ich konnte sie nicht auswählen, da project.pbxproj beschädigt war (obwohl die Erstellung erfolgreich war).

Ich musste project.pbxproj zurücksetzen und danach hatte GoogleService-Info.plist die Zielmitgliedschaft ausgewählt.

Stellen Sie sicher, dass project.pbxproj nach dem Zusammenführen von Konflikten nicht beschädigt ist (es hatte etwas damit zu tun attempted to initialize an object with an unknown UUID).

Stanislau Buzunko
quelle