0

In meinem Xamarin iOS-Projekt hat Entitlements.plist aps-environment auf development gesetzt, zu Testzwecken. Ich verwende die Visual Studio Team Services Extension for the App Store, um Publishing-Builds in TestFlight zu automatisieren. Wenn es jedoch fastlane Pilot nutzt die App zu laden, ich diesen Fehler:Automatisierte Konvertierung der aps-Umgebung von der Entwicklung in die Produktion in Xamarin

ERROR ITMS-90046: "Invalid Code Signing Entitlements. Your application bundle's signature contains code signing entitlements that are not supported on iOS. Specifically, value 'development' for key 'aps-environment' in 'project' is not supported.

Es sieht aus wie die Umwelt zu production erhalten geschaltet sollte, wenn die kontinuierliche Integration Build ausgeführt wird. Wie automatisiere ich das?

+0

In welcher Konfiguration wurde die App erstellt (Konfiguration in der Task "Xamarin.iOS")? Geben Sie die Bereitstellungsprofildatei für Xamarin.iOS-Task an? Wie ist die Einstellung der iSO-Bundle-Signierung (Rechtsklick-Projekt => Eigenschaften => iSO-Bundle-Signierung) für diese Konfiguration? Wählen Sie das Provisioning-Profil und die Custom-Berechtigung.plist korrekt aus? Sie können ein neues Profil erstellen und es für diese Konfiguration verwenden. [TestFlight verwenden] (https://developer.xamarin.com/guides/ios/deployment,_testing,_and_metrics/testflight/) –

+0

In der Task "Xamarin.iOS" ist für Signing & Provisioning festgelegt, dass der Dateiinhalt, aber alle Felder verwendet werden sind leer. Bei der Signierung des iOS-Bundles im Projekt ist die Identität des Entwicklers abhängig von der Build-Konfiguration Entwickler (Automatisch) oder Verteilung (Automatisch). Bereitstellungsprofil ist automatisch. Provisioning (ohne Push-Benachrichtigungen) funktioniert. Benutzerdefinierte Berechtigungen wird für beide Konfigurationen auf 'Entitlements.plist' gesetzt. Soll ich 'Entitlements.plist' in' Entitlements.developer.plist' und 'Entitlements.distribution.plist' umwandeln? –

+0

Sie können es versuchen und das Ergebnis überprüfen. –

Antwort

2

Entfernen Sie Entitlements.plist und fügen Sie Entitlements.developer.plist und Entitlements.production.plist hinzu. Geben Sie in den iOS-Bundle-Einstellungen die entsprechende PLIST-Datei für Kundenberechtigungen basierend auf der Build-Konfiguration ein.

+0

Es gibt nichts über diesen Ansatz in der Standardvorlage oder Xamarin-Dokumentation. Ich frage mich, ob Xamarin einen anderen Ansatz verfolgt. Es funktioniert aber. –

Verwandte Themen