Xcode 11.2 - App-Datei kann nicht auf Gerät installiert werden?

29

Ich habe kürzlich mein Betriebssystem auf Catalina aktualisiert und Xcode auf 11.2 aktualisiert. Wenn ich versuche, eine Release-Version meiner App auf meinem Gerät auszuführen, wird seitdem einfach der folgende Fehler angezeigt:

Die App kann nicht installiert werden.

Wenn ich auf "Details" tippe, erhalte ich Folgendes:

App-Installation fehlgeschlagen Domäne: com.apple.dtdevicekit Code: -402620395 Fehlerursache: Ein gültiges Bereitstellungsprofil für diese ausführbare Datei wurde nicht gefunden.

Benutzerinfo: {DVTRadarComponentKey = 487927; "com.apple.dtdevicekit.stacktrace" = (0 DTDeviceKitBase 0x000000011baff6e7 DTDKCreateNSError + 109 1 DTDeviceKitBase
0x000000011baffde9 DTDK_AMDErrorToNSError + 792 2 DTDeviceKitBase
0x000000011bb3f56a 90- [DTDKMobileDeviceToken installApplicationBundleAtPath: withOptions: undeine Fehler: withCallback:] _ block_invoke + 164 3 DVTFoundation 0x000000010356f156 DVTInvokeWithStrongOwnership + 73 4 DTDeviceKitBase
0x000000011bb3f301 - [DTDKMobileDeviceToken installApplicationBundleAtPath: withOptions: undeine Fehler: withCallback:] + 1589 5 IDEiOSSupportCore 0x000000011b9c7a25 __118- [DVTiOSDevice (DVTiPhoneApplicationInstallation) processAppInstallSet: appUninstallSet: Install: completionBlock:] _ block_invoke.352 + 4523 6 DVTFoundation 0x00000001036a03ba __DVT_CALLING_CLIENT_BLOCK
+ 7 7 DVTFoundation 0x00000001036a1a92 __DVTDispatchAsync_block_invoke + 809 8
libdispatch.dylib 0x00007fff68220583 _dispatch_call_block_and_release + 12 9 libdispatch.dylib 0x00007fff6822150e _dispatch_client_callout + 8 10 libdispatch.dylib 0x00007fff68226ace _dispatch_lane_serial_drain + 597 11 libdispatch.dylib 0x00007fff68227452 _dispatch_lane_invoke + 363 12 libdispatch.dylib 0x00007fff68230a9e _dispatch_workloop_worker_thread + 598 13 libsystem_pthread.dylib 0x00007fff6847a71b _pthread_wqthread + 290 14 libsystem_pthread. dylib 0x00007fff6847a57b start_wqthread + 15); }}

Meine Bereitstellungsprofile sind zu 100% korrekt, ebenso wie meine Zertifikate. Ich habe keine Ahnung, warum dies geschieht, und ich habe absolut alles versucht, um es zum Installieren / Ausführen zu bringen. Ich habe es versucht:

  • Überprüfen Sie auf der Registerkarte "Ausführen", ob die Freigabe für "Schema" aktiviert ist
  • Bestätigt, dass das richtige Bereitstellungsprofil ausgewählt ist
  • Entfernen der App von meinem Gerät
  • Neue Bereitstellungsprofile erstellen
  • Ändern meiner Bundle-ID
  • Neue Zertifikate erstellen
  • Bereinigen des Build-Ordners, Neustart von Xcode
  • Xcode neu installieren
  • Löschen des Ableitungsordners

Keiner der oben genannten hat funktioniert. Ich bin jetzt seit 2 Tagen dabei - Hilfe wird geschätzt. Ich kann die App-Datei nur dann erfolgreich auf meinem Gerät installieren, wenn ich sie zuerst auf TestFlight hochlade (was ich nicht jedes Mal tun kann, wenn ich eine kleine Änderung testen möchte).

Bretagne
quelle
Konnten Sie dies mit einem zweiten Gerät überprüfen?
CodeBender
Ja, ich habe versucht, die App auf 2 verschiedenen Geräten zu installieren, jedes Mal der gleiche Fehler. @ CodeBender
Bretagne
1
Sie haben erwähnt, dass Sie kürzlich auf 11.2 aktualisiert haben. Ist dies das erste Mal, dass Sie mit Xcode 11.x erstellt haben? Für Distributionsprofile auf der Entwickler-Website von Apple gibt es eine neue Option für Xcode 11. Verwenden Sie diese?
CodeBender
1
Was haben Sie auch unter Datei> Arbeitsbereichseinstellungen unter "System erstellen" ausgewählt?
Shim
1
Es macht mich verrückt !!! Ich habe dieses Problem immer noch und keine der hier aufgeführten Lösungen hat es gelöst. Gibt es noch andere Ideen?
Georg

Antworten:

19

Gehen Sie zu Datei -> Arbeitsbereichseinstellungen und stellen Sie sicher, dass Ihr Build-System auf Legacy-Build-System eingestellt ist.

Ich bin auf Catalina und Xcode 11.2 auf dasselbe Problem gestoßen, das es für mich gelöst hat.

Ab Xcode 11 beginnt Apple damit, einige der Build-Kriterien durchzusetzen, die zuvor nur für AppStore-Builds auf IPA-Extraktion und Geräte-Builds erforderlich waren.

Bisher bin ich begegnet:

  • Erfordert die oben genannten Einstellungen für das Legacy-Buildsystem für Gerätebereitstellungen für ältere Projekte oder Projekte, die ältere Frameworks verwenden
  • Entfernen nicht verwendeter Architekturen zum Extrahieren einer IPA aus einem Archiv
Lean van Heerden
quelle
Wahrscheinlich das gleiche Problem - ein etwas anderer Fehler, aber keine Lösung hier hat ihn gelöst. Die ausführbare Datei wurde mit ungültigen Berechtigungen signiert. Domäne: com.apple.dtdevicekit Code: -402620394 Fehlerursache: Die in der Datei mit den Signaturberechtigungen Ihrer Anwendung angegebenen Berechtigungen sind ungültig, nicht zulässig oder stimmen nicht mit den in Ihrem Bereitstellungsprofil angegebenen überein. (0xE8008016).
Zeichner
2
@drewster Ich hatte auch den gleichen Fehler und er hing mit nicht verwendeten Architekturen im Build zusammen. Manchmal spezifizieren Frameworks x86-Architekturen über die Arm-Architekturen hinaus. Das Ausführen des in diesem SO-Artikel angegebenen Skripts löste das Problem für mich.
Lean van Heerden
2
Der Wechsel zu Legacy Build System hat bei mir leider nicht funktioniert: /
Brittany
1
Verbrachte Stunden damit. Ich habe dem Arbeitsbereich ein Projekt hinzugefügt, das ein Framework generiert hat, das ich als Ziel erstellt habe. Ich habe dann das Hauptprojekt im Arbeitsbereich in dieses Framework-Projekt eingebettet / verknüpft. Wenn Sie das neue Build-System in 11.2.1 GM verwenden, wird beim Exportieren von IN HOUSE auf einem überwachten Gerät "Konnte nicht installiert werden ..." angezeigt. Als ich diesen Beitrag las, wechselte ich zu Legacy Build System. Was das getan hat, ist FEHLER zu zeigen !!! Mir zu sagen, dass Lipo bei der Archivierung nicht die falsche Architektur entfernen konnte. Das zeigte also in die richtige Richtung und ich reparierte dann das Framework, das nicht richtig gebaut wurde. DANKE LEGACY!
Zumzum
In meinem Fall hat der Wechsel zum Vermächtnis das nicht gelöst. Dies war auf eine Änderung des Bereitstellungsprofils zurückzuführen. Am Ende habe ich die App vom Gerät gelöscht und dann war die Installation erfolgreich.
Konstantinos
8

Folgendes funktioniert bei mir:

  1. Entfernen Sie die App und das Profil vom Gerät
  2. Installieren Sie sie erneut.
Govani Dhruv Vijaykumar
quelle
Klassische Lösung :)
Arthur Shkil
Mit Xcode 11.3 ist dies die schnellste und einfachste Lösung.
Kientux
5

Verwenden Sie Automatisch das Signieren verwalten

Lösen Sie dieses Problem.

Auto Signing aktiviert

Akustiker
quelle
5

Für mich liegt es an Dynamic Frameworks, die ich in der Anwendung hinzugefügt habe. Zunächst habe ich die Option (Einbetten + Nicht signieren) für die dynamischen Frameworks ausgewählt.

Das Ändern für (Frameworks & Sign) für solche Frameworks hat das Problem für mich behoben.

Geben Sie hier die Bildbeschreibung ein

Vittal Pai
quelle
Gerade ein externes Framework mit "Ohne Zeichen einbetten" hinzugefügt, hatte das gleiche Problem. Geändert in Embed & Sign - gut gemacht!
Malex
3

Ich kann dieses Problem beim ersten Reinigen beheben:

cmd + k
shift + cmd + k

und dann lösche ich den gesamten Inhalt von Ableiten von Daten. Der Pfad des Ordners sollte so sein

/Users/youruser/Library/Developer/Xcode/DerivedData

Oder Sie können es einchecken

Xcode -> Preferences -> Locations
m1sh0
quelle
0

Ich hatte das gleiche Problem, bis ich diese Lösung fand . Ich musste alle meine alten Zertifikate und Bereitstellungsprofile löschen und dann neue Zertifikate mit "Apple Development" und "Apple Distribution" anstelle der Option "iOS ..." erstellen.

user1791914
quelle
0

Ich habe das gleiche Problem und das Problem war, dass ich ein unbezahltes Konto verwendet habe und die Gesamtzahl der kostenlosen Entwicklungsprofile erreicht wurde. Sie müssen also ein kostenpflichtiges Konto verwenden

Details:

Fehlerursache: Die maximale Anzahl von Apps für kostenlose Entwicklungsprofile wurde erreicht

ein Bett
quelle
Ich hatte das gleiche Problem. Ich las die Details und erkannte danach
Candyline
0

Ich habe diesen Fehler , wenn ein Projekt ausgeführt wird , der eine Bibliothek unter hatte , Embed Frameworksdie hatte Code Sign on Copynicht aktiviert. Durch Häkchen wurde dieses Problem für mich behoben.

Stunner
quelle
0

"-402620395 Fehlergrund: Ein gültiges Bereitstellungsprofil für diese ausführbare Datei wurde nicht gefunden."

Ich hatte auch dieses Problem und löste es:

Dies bedeutet, dass Ihr Bereitstellungsprofil nicht auf Entwicklung eingestellt ist. Sie müssen ein neues Bereitstellungsprofil für die Entwicklung erstellen, das sich von einem für die Verteilung festgelegten Profil unterscheidet. Wählen Sie dann in Signatur und Funktionen in Ihren App-Einstellungen auf xcode Ihr Entwicklungsprofil aus, wenn Sie es auf Ihrem Gerät installieren möchten. Machen Sie sich keine Sorgen um die Verteilung mit Ihrem Entwicklerprofil. Sie müssen auswählen, welches Profil Sie beim Pushing zum App Store verwenden möchten (es ist auf "Keine" gesetzt und Sie müssen es wechseln).

Eine andere Lösung wäre die automatische Verwaltung der Anmeldeeinstellungen. Die Standardeinstellungen sind jedoch festgelegt, wenn Sie in den App Store wechseln, den Sie möglicherweise nicht möchten.

Michael Montalbano
quelle
-1

Xcode 11.2 wird von Apple am 5. November 2019 nicht mehr unterstützt

Selbst wenn Sie es auf Ihrem Gerät installieren können, können Sie AppStore nicht übergeben: Protokolle finden Sie hier

Laden Sie die neueste xip-Datei für die AppStore-Version herunter.

Vorschau

Xcode 11.2 hatte einige Probleme und stürzt ältere iOS-Geräte ab und wird nicht auf neueren iOS-Geräten installiert. Im Moment können Sie also:

Die Lösung lautet also:

  1. Aktualisieren Sie macOS auf 10.15.1
  2. Installieren Sie Xcode 11.2.1 GM Seed
  3. Erstellen und installieren Sie die App auf dem aktualisierten Gerät (13.2.2 ist ab sofort verfügbar).
Mojtaba Hosseini
quelle
Laden Sie jetzt Xcode 11.2.1 GM-Saatgut herunter ... Ich werde Sie wissen lassen, ob das Problem dadurch behoben wird. Ich bin froh, dass es nicht nur ich bin - ich habe das Gefühl, dass ich mit Xcode 11.2 verrückte Pillen nehme.
Bretagne
2
Basierend auf dem verknüpften SO-Beitrag ist der Absturz für Geräte vor iOS 13 relevant, die eine haben UITextView. Es gibt nichts über Installationsprobleme "auf neueren iOS-Geräten"
Shim
Dieser Beitrag enthält viele Links, da Apple Chaos erzeugt. @shim, aber jetzt akzeptiert Apple das Problem und lehnt Xcode 11.2 vollständig ab und entfernt es aus dem AppStore.
Mojtaba Hosseini
3
Diese Antwort ist für das Problem nicht relevant. Ich habe die App-Bereitstellung mit Xcode 11.2.1 getestet und das Problem blieb bestehen. Die einzige Möglichkeit, die App auf einem Gerät mit Xcode 11.2.1 bereitzustellen, bestand darin, "Datei -> Arbeitsbereichseinstellungen -> Build-System" auf "Legacy-Build-System" zu setzen
Lean van Heerden,
Also @Brittany was war das Ergebnis? Hat es funktioniert?
Mojtaba Hosseini
-1

Dieses Problem betrifft nur die CODE-SIGNIERUNG

Der wichtigste Punkt hierbei ist jedoch, ob Sie die XCode 11.x-Version verwenden. Nicht nur die Codesignatur in Ihrem Projekt, sondern wir sollten auch die Codesignatur in SDKs oder Abhängigkeiten von Drittanbietern überprüfen, die wir unserem Projekt hinzufügen.

Schritte zum Überprüfen der Codesignatur von SDks von Drittanbietern:

  1. Laden Sie den Quellcode des Frameworks herunter, den Sie benötigen
  2. Öffnen Sie die .xcproj-Datei aus dem Quellcode mit XCode 11.x.
  3. Gehen Sie zu Ziele -> Signieren & Funktionen -> Alle auswählen -> Bundle-ID Wenn Sie Unebenheiten in der ID feststellen, z. B. Kennung mit 4 Trennzeichen (z. B. com.company.mac.app)

    Ändern Sie es in com. * Und geben Sie ein.

  4. Stellen Sie sicher, dass Ihre XCODE COMMAND LINE TOOLS mit XCode 11.x eingestellt sind

  5. Verwenden Sie nun den folgenden Befehl, um das SDK mit den in Schritt 3 vorgenommenen Änderungen neu zu erstellen

      carthage build --no-skip-current --cache-builds --platform iOS
  6. Kopieren Sie nun das aus dem Karthago- Ordner des Quellcodes generierte Framework und ersetzen Sie das vorhandene SDK in Ihrem Projekt.

Wiederholen Sie diesen Vorgang für alle SDKs von Drittanbietern in Ihrem Projekt.

HINWEIS: Stellen Sie sicher , markiert Sie alle 3rd - Party - SDKs als Embed & Sign in

Targets => General => Frameworks, Libraries, and Embedded Content
Teja Kumar Bethina
quelle
-1

Dies kann an einem laufenden Verteilungs- / Freigabeschema liegen. Das Ändern des Schemas zum Debuggen funktioniert für mich. Hoffe das hilft jemandem.

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

iGW
quelle
-2

Die Antwort ist im folgenden Kommentar: https://stackoverflow.com/a/50719379/10353503

Magy Elias
quelle
1
Bitte posten Sie mehr als nur einen Link, falls die Antwort, auf die Sie verweisen, in Zukunft gelöscht wird. Bitte sagen Sie deshalb ein paar Worte zum Inhalt des Links. Vielen Dank
THess