Ich habe versucht, meine ipa-Datei mit einem neuen Bereitstellungsprofil auf Mac Os 10.10 mit der iResign-App zu kündigen, aber ich habe die folgende Warnung erhalten: "Warnung: --resource-rules ist in Mac OS X> = 10.10 veraltet".
Was sollte ich jetzt tun?
ios
iphone
code-signing
ipa
osx-yosemite
hiennv92
quelle
quelle
iResign
(was auch immer das ist) und Sie sollten die App wahrscheinlich stattdessen mit Xcode neu erstellen?Antworten:
Ich fand Umgehung : Wenn Sie die iResign App von XCode laufen - dann wird zurücktreten Sie App ohne Probleme (Warnung erscheint in der Konsole statt Popup). Wenn Sie jedoch XCode schließen und die App alleine ausführen, wird das Popup wieder angezeigt!
Übrigens: Fehler gefunden :) Der Zustand
if (systemVersionFloat < 10.9f)
Ist für Yosemite 10.10 kaputt. Lustig.
Vielen Dank,
quelle
Klicken Sie auf Ihr Projekt> Ziele> Wählen Sie Ihr Ziel> Build-Einstellungen>
Code Signing Resource Rules Path
und hinzufügen:
$(SDKROOT)/ResourceRules.plist
quelle
Code Signing Resource Rules Path
dort nicht ... Irgendwelche Ideen?Build Settings
Georg und stelle sicher, dass du alle Level ausgewähltSeit Xcode 7 muss die
Code Signing Resource Rules Path
Build-Einstellung leer bleiben, sonst wird diese Warnung ausgegeben.Technischer Hinweis TN2206 enthält die Details:
quelle
Nach Xcode 7 funktionierten frühere Lösungen nicht mehr. Ein neuer wurde von Rishi Goel gezeigt (in https://stackoverflow.com/a/32762413/2252465 )
CODE_SIGN_RESOURCE_RULES_PATH=$(SDKROOT)/ResourceRules.plist
Suchen Sie das
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/PackageApplication
Skript und aktualisieren Sie es.Suchen Sie die Zeilen mit dem folgenden Code im Skript
my @codesign_args = ("/usr/bin/codesign", "--force", "--preserve-metadata=identifier,entitlements,resource-rules", "--sign", $opt{sign}, "--resource-rules=$destApp/ResourceRules.plist");
ändere es in:
my @codesign_args = ("/usr/bin/codesign", "--force", "--preserve-metadata=identifier,entitlements", "--sign", $opt{sign});
quelle
Versuchen Sie, die folgenden Argumente im Befehl xcodebuild hinzuzufügen.
-sdk iphoneos CODE_SIGN_RESOURCE_RULES_PATH='$(SDKROOT)/ResourceRules.plist'
quelle
Wenn Sie die App über das Terminal zurücktreten, können Sie sie
resource-rules
beim Ausführen der Code-Signierung sogar weglassen , da nicht extern angegeben werden muss, welche Ressource signiert werden soll und welche nicht. Jetzt müssen alle Ressourcen im Paket signiert werden.Um die App über das Terminal zu kündigen, können Sie die folgenden Schritte ausführen:
unzip MyApp.ipa rm -rf Payload/MyApp.app/_CodeSignature/ cp ~/Desktop/MyAdHoc.mobileprovision Payload/MyApp.app/embedded.mobileprovision codesign -f -s "iPhone Distribution: Code signing Certificate for Enterprise or Ad-hoc app" Payload/MyApp.app zip -qr MyApp_Resigned.ipa Payload/
quelle
Ich habe gerade meine vorhandene iOS-App in Xcode 7 GM (ab Xcode 6.4) geöffnet und diese Warnung zur Ablehnung gesehen.
Es ist interessant, dass Antworten und Kommentare den 'Pfad für Codesignatur-Ressourcenregeln' aktualisieren und auch auf Mac-Apps verweisen.
In meinem Fall hatte das Projekt diesen Schlüssel und Wert bereits standardmäßig festgelegt (ich habe ihn nie festgelegt). In der Warnung wird darauf hingewiesen, dass Ressourcenregeln ebenfalls veraltet sind.
Für mich wurde durch Löschen des Werts des Pfads "Codesignatur-Ressourcenregeln" die Warnung entfernt. Ich habe auf diese Weise keinen neuen Build eingereicht, daher muss ich möglicherweise zurückkommen und diese Antwort aktualisieren.
Ich fand es nur interessant, dass meine Antwort dem entgegengesetzt ist, was alle anderen sahen.
quelle
Wenn Sie die beiden Parameter --resource-rules aus der Argumentliste auskommentieren, in der die iResign-App die Codesign-Task aufruft, müssen Sie die Projekterstellungseinstellungen für das Projekt der App nicht ändern.
Ich mag die Idee nicht, die Build-Einstellungen für jedes Projekt ändern zu müssen, mit dem ich arbeiten möchte, nur damit ich es zurücktreten kann.
Ich habe das Resign-Tool neu erstellt und in mein Anwendungsverzeichnis kopiert, damit ich es nicht in Xcode öffnen muss.
quelle