web-dev-qa-db-de.com

Wann werden Profile erneuert, wenn "Signieren automatisch verwalten"/allowProvisioningUpdates verwendet wird?

Ich habe eine verteilte Unternehmensanwendung, die auf einem Build-Server mit xcodebuild basiert. Letztes Jahr haben wir eine Änderung vorgenommen, um die Funktion "Signaturen automatisch verwalten" mit dem Flag "-allowProvisioningUpdates" zu verwenden. Das Bereitstellungsprofil wird mit dieser Technik in Ordnung erzeugt, aber wir haben ein Jahr mit diesem Profil erreicht und laufen in 31 Tagen aus.

Anfangs hatte ich den Eindruck, dass die Verwendung von "allowProvisioningUpdates" dazu führen würde, dass das Bereitstellungsprofil bei jedem neuen Build neu erstellt wird. In diesem Fall würde es jedoch nicht ablaufen. Wir müssen einen neuen Build mit einem aktualisierten Profil erstellen, damit unsere Benutzer in einem Monat keine kaputte App mehr haben. Das generierte Bereitstellungsprofil wird jedoch nicht im Abschnitt "Zertifikate, Kennungen und Profile" des Apple Developer Center angezeigt, und ich kann keine Möglichkeit finden, Xcode oder Xcodebuild zu zwingen, ein neues Bereitstellungsprofil zu erstellen. Wie kann ich dies erzwingen, um Ausfallzeiten für unsere Benutzer zu gewährleisten? Was passiert, wenn das Profil endgültig abläuft?

13
blork

Ich habe mich mit Apple in Verbindung gesetzt und hier ist Folgendes zu sagen:

Automatisches Verwalten der Signatur nur bei Xcode erstellt ein neues Bereitstellungsprofil nach dem Ablaufdatum des Bisherige. 

Dies ist die beste Option für neue Builds, die an .__ übermittelt werden müssen. App Store, da bei aktuellen Benutzern keine Ausfallzeit auftritt, wenn Provisionierungs Profil.

Wenn Sie interne Apps entwickeln, wenn Sie die Bereitstellung zulassen Profil läuft ab, um automatisch für den neuen Build zu signieren (mit automatisch erstelltem neuen Bereitstellungsprofil). Ihre Benutzer können nicht Zugriff auf Ihre App.

Daher scheint die Antwort zu sein, dass wir die automatische Signatur nicht für interne/Enterprise-Distributionen verwenden sollten, sondern nur für App Store-Bereitstellungen.

7
blork

Bei einigen Apps, die wir intern vertreiben, hatte ich dasselbe Problem. Die Lösung, die schließlich für mich funktionierte, bestand darin, die App-ID aus dem Entwicklercenter zu löschen. Anschließend ließ Xcode sie und die zugehörigen Bereitstellungsprofile neu erstellen. Beachten Sie jedoch Folgendes: Wenn Sie nur eine App-ID in Ihrem Developer Center haben, wird durch das Löschen dieser Option auch Ihr Signaturzertifikat zusammen mit den Bereitstellungsprofilen gelöscht. Wir verfügen über mehrere Apps, die von unserem Zertifikat abhängig sind. Daher wurde es nicht gelöscht. Das Hauptproblem bezüglich des in Kürze auslaufenden Bereitstellungsprofils wurde jedoch gelöst.

1
GetIntoCode

Obwohl es für diejenigen von uns ärgerlich ist, die alle Elemente mit Skripten weit vorziehen würden, stellt sich heraus, dass das manuelle Ausführen eines Builds auf dem Computer, dessen 'Gerät' sich nicht im automatischen Bereitstellungsprofil befindet, das Profil aktualisiert.

Das funktionierte für mich gerade unabhängig davon, ob ich das Archiv/Export von der Kommandozeile mit meinen Skripten oder von der Xcode-GUI aus ausgeführt habe.

Es wurden keine Aufforderungen gegeben, es wurde nur stumm aktualisiert und funktionierte. 

Da Apple uns oben geantwortet hat, ist dies möglicherweise ein neues Feature/Fix mit Xcode 10.1, auf dem ich heute bin.

0
AnneTheAgile

Versuchen Sie, das zweite Bereitstellungsprofil im Dev-Portal manuell zu erstellen, entfernen Sie das alte Profil aus ~/Library/MobileDevice/Provisioning Profiles des Build-Servers, laden Sie das neue Profil herunter und installieren Sie es. 

0
Oleg Shulakov