Angenommen, mein Kunde möchte nicht, dass ich sein iPhone-Verteilungszertifikat besitze, kann ich ihm dann die kompilierte App senden und ihn alle Parameter für App-ID, Provisioning usw. anpassen lassen und dann signieren und absenden? Wie mache ich das?Kann ich eine iPhone App auf einem Computer kompilieren und auf einem anderen Computer signieren?
Antwort
Sehen Sie sich den CodeSign-Schritt im XCode-Build-Ergebnisfenster an (klicken Sie auf das Symbol "Zeilen mit Text" auf der rechten Seite, um die tatsächlichen Befehle zu sehen, die XCode verwendet).
Sie werden sehen, dass der Codesign Schritt ein Kommandozeilen-Tool verwendet (/ usr/bin/Co-Design) so etwas wie dieses:
/usr/bin/codesign -f -s "iPhone Distribution: My Company"
--resource-rules=/Users/username/source/myApp/build/Distribution-iphoneos/myApp.app/ResourceRules.plist
--entitlements /Users/username/source/myApp/build/myApp.build/Distribution-iphoneos/myApp.build/myApp.xcent
/Users/username/source/myApp/build/Distribution-iphoneos/myApp.app
Es Unterzeichnung der kompilierten Anwendung in der „bauen“ Verzeichnis mit die von der Option "-s" in der Befehlszeile angegebene Signatur. Es gibt also keinen Grund, warum Sie Ihr "Build" -Verzeichnis nicht auf einen anderen Computer verschieben und es mit dem gewünschten Schlüssel unter Verwendung von codesign
von der Befehlszeile aus unterschreiben können.
Der einzige Weg, wie jetzt dokumentiert, um die Binärdatei zu zertifizieren, ist es mit einem Dist aufzubauen. Das Zertifikat wurde dem Computer hinzugefügt, der den Quellcode kompiliert.
Sie können das Zertifikat als .p12-Datei exportieren und auf einer anderen Maschine erneut importieren. Beide Schritte müssen mit Keychain Access durchgeführt werden.
Sie können versuchen, das zu tun, was Sie mit Terminalanrufen tun möchten, aber ich bezweifle, dass Sie eine iPhone-App signieren können, die kompiliert wurde.