Możliwość zastąpienia podpisu na już podpisanym pliku binarnym jest wbudowana w narzędzie codeign. W ten sposób, jeśli twój certyfikat programisty wygasa (jak to często irytująco), nie musisz odbudowywać swojej aplikacji.
Może to być ważne, zwłaszcza jeśli potrzebujesz obsługi starej wersji aplikacji i wprowadziłeś zmiany w kodzie od czasu zarchiwizowania IPA.
Zwykle używam tego skryptu. Przydaje się do handlu debugowaniem kompilacji IPA z osobami, które mają własne konta programistów i dla których nie chcę nagrywać gniazda UDID, i którzy nie chcą ładować moich profili udostępniania na swoich urządzeniach.
#!/bin/sh
TEMPDIR=/tmp/$RANDOM-$RANDOM-$RANDOM
RESOURCERULES=/tmp/ResourceRules-$RANDOM$RANDOM.plist
CURRENTDIR=`pwd`
mkdir -p "$TEMPDIR"
cat - > "$RESOURCERULES" <<ResourceRulesPlistDelimiter
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>rules</key>
<dict>
<key>.*</key>
<true/>
<key>Info.plist</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>10</real>
</dict>
<key>ResourceRules.plist</key>
<dict>
<key>omit</key>
<true/>
<key>weight</key>
<real>100</real>
</dict>
</dict>
</dict>
</plist>
ResourceRulesPlistDelimiter
unzip -q "$1" -d "$TEMPDIR" || exit 1
xattr -d -r com.apple.quarantine "$TEMPDIR"
for APPBUNDLE in "`find "$TEMPDIR" -name "*.app"`"; do
codesign --resource-rules="$RESOURCERULES" -f -s "iPhone Developer" "$APPBUNDLE"
codesign -dvvvv -r- "$APPBUNDLE"
done
cd "$TEMPDIR"
zip -qr "$TEMPDIR.zip" "Payload" && cd "$CURRENTDIR" && mv "$1" "$1.bak" && mv "$TEMPDIR.zip" "$1"
cd "$CURRENTDIR"
rm -rf "$TEMPDIR.zip"
rm -rf "$TEMPDIR"
rm -rf "$RESOURCERULES"
Możesz spróbować [www.aironapp.com] (http://www.aironapp.com). Może automatycznie dokonać repozytorium IPA. Najpierw musisz skonfigurować swoje konto Apple (certyfikat wysyłania i klucze prywatne). – shader
Prosta odpowiedź skryptu powłoki: http://stackoverflow.com/a/10905855/190599 – CodeReaper