Die Übermittlung der Migration von dSYM When Fabric zu Firebase für Crashlytics konnte nicht abgeschlossen werden

12

Ich verwende xcode11 mit Mac OS 10.14.1. Ich habe die Migration von Fabric zu Firebase mithilfe der folgenden Dokumente implementiert.

https://medium.com/@niamhpower/the-great-migration-moving-from-fabric-to-firebase-as-an-ios-developer-7b61a8b40008

Ich habe Code zum Testen eines Absturzes generiert, aber dieser Absturzbericht kann nicht in der Firebase-Crashlytics-Konsole angezeigt werden. Ich habe das folgende Dokument für diese Implementierung verwendet

https://firebase.google.com/docs/crashlytics/force-a-crash?platform=ios

Ich habe auch das folgende Ausführungsskript in Xcode-Erstellungsphasen hinzugefügt

"$ {PODS_ROOT} / Fabric / Upload-Symbole" -gsp "$ {PROJECT_DIR} /GoogleService-Info.plist" -p ios "$ {DWARF_DSYM_FOLDER_PATH} / $ {DWARF_DSYM_FILE_NAME}"

Dies gibt jedoch den folgenden Fehler zurück, wenn ich die Anwendung ausführe.

31merror: Die Übermittlung von dSYM unter /Users/macmini1/Library/Developer/Xcode/DerivedData/app_name-dnzsvdsxebmfqjbjecjlyhdzwags/Build/Products/Debug-iphonesimulator/app_name.app.dSYM wurde nicht abgeschlossen -domain.process-dsym Code = 3 "Datei existiert nicht mehr bei (null)" UserInfo = {NSLocalizedFailureReason = Datei existiert nicht mehr bei (null)} [0m Befehl PhaseScriptExecution ist mit einem Exit-Code ungleich Null fehlgeschlagen

Könnten Sie mir bitte helfen, dieses Problem zu lösen?

IKKA
quelle
Tritt das Problem immer noch auf? Firebase mit einem OMG, das Entwickler veranlasste, die dSYMs hochzuladen
Zubair
Hallo, ich stecke in der gleichen Frage fest. Hattest du Glück damit? Die Antwort von @ weet1988 hat mein Problem nicht behoben (es ist bereits das letzte Skript, das in meinem Fall ausgeführt wird)
Mikey
1
@mikey Ich habe das Skript aus dem Ausführungsskript gelöscht und erneut hinzugefügt und auch den xcode geschlossen. Dann habe ich versucht, es erneut auszuführen. Es wird funktionieren
IKKA
Ich habe Crashlytics tatsächlich dazu gebracht, ohne das upload-symbolsSkript zu arbeiten. Ich habe gerade die Pods auf die neuesten verfügbaren Versionen aktualisiert und sichergestellt, dass $ {PODS_ROOT}/Fabric/rundie letzte ausgeführt wurde. Vielen Dank für Ihre Antwort @IKKA
Mikey
@mikey Du hast gemeint, dass du nur den Befehl $ {PODS_ROOT} / Fabric / run in Runscript verwendest; Recht?
IKKA

Antworten:

5

Ich hatte das gleiche Problem. Der Grund war, dass das Skript "$ {PODS_ROOT} / Fabric / run" nicht das letzte in der Liste der Skripte in Build-Phasen war. Das Skript wurde zuletzt erstellt und alles wurde in Ordnung.

weet1988
quelle
2
Mein Skript ist das neueste, aber ich erhalte immer noch diesen Fehler ...
Danpe
5

Ich habe durch Hinzufügen eines findBefehls gelöst . Füge den Befehl find über den Upload-Symbolen hinzu

Beispiel:

find "$ {DWARF_DSYM_FOLDER_PATH}" -name "* .dSYM" | xargs -I {} $ PODS_ROOT / Fabric / Upload-Symbole -gsp "$ {PROJECT_DIR} /MyApp/GoogleService-Info.plist" -p ios {}

"$ {PODS_ROOT} / Fabric / Upload-Symbole" -gsp "$ {PROJECT_DIR} /MyApp/GoogleService-Info.plist" -p ios "$ {DWARF_DSYM_FOLDER_PATH} / $ {DWARF_DSYM_FILE_NAME}"

Ramesh RC
quelle
Müssen wir andere .dSYM-Dateien hochladen, die kein $ {DWARF_DSYM_FILE_NAME} sind?
CyberMew
@CyberMew, Es ist nicht erforderlich, die gesamte .dSYM-Datei hochzuladen. Du hast recht. So können wir nur die Datei finden, die wir hochladen müssen. Ich habe meine Antwort geändert.
Ramesh RC
Ich glaube, Ihre ursprüngliche Antwort zum Hochladen aller .dSYM-Dateien ist korrekt. Ich habe mich beim Support erkundigt und sie haben erwähnt, dass "Crashlytics die Symboldateien aus Ihrer Haupt-App zusammen mit den Symbolen aus jedem verwendeten Framework oder jeder verwendeten Bibliothek benötigt." Grundsätzlich sind ja alle Symboldateien erforderlich.
CyberMew
Das ist super cool!. Wenn ich alle .dSYM-Dateien zum Testflug hochlade, wird die Warnung "ITMS-90381: Zu viele Symboldateien" angezeigt. Irgendeine Idee?
Ramesh RC
Hochladen auf test flight? Meinen Sie stattdessen Firebase Crashlytics? Ich bin mir nicht sicher, da ich noch nie darauf gestoßen bin. Vielleicht können Sie diese Lösung stackoverflow.com/questions/25755240/… ausprobieren . Wenn dies nicht funktioniert, wenden Sie sich an den Support und teilen Sie uns mit, was sie sagen!
CyberMew