2011-12-26 11 views
9

Mam projekt XCode z wieloma obiektami docelowymi, który kompiluje niektóre współdzielone pliki kodu źródłowego, oprócz określonych plików .xib. Zasadniczo każdy cel buduje inną aplikację, ale pod maską większość kodu jest udostępniana.Skorzystaj z docelowego agregatu do podpisywania i wdrażania wielu aplikacji.

Chciałbym sposób zautomatyzować rozmieszczenie tych aplikacji. Obecnie muszę wybrać cel z rozwijanego schematu, wybrać Produkt> Archiwizacja, kliknąć Udostępnij, wybrać odpowiedni certyfikat podpisywania kodu i lokalizację, a następnie wdrożyć mój plik .ipa.

Myślę, że muszę użyć Aggregate, który buduje wszystkie moje cele i use xcrun as seen in this question on StackOverflow jako skrypt uruchamiany w fazie budowy każdego celu, ale jestem zablokowany w części podpisywania kodu. Znalazłem CODE_SIGN_IDENTITY w sekcji Ustawienie ustawień Xcode Build Setting Reference. Jak mogę programowo uzyskać dostęp do Profilu obsługi administracyjnej określonego w Ustawieniach kompilacji każdego celu?

Chyba ostatecznością byłoby przechowywać profile w know katalogów w stosunku do mojej ścieżce kodu źródłowego

Odpowiedz

1

Aby uzyskać do niego dostęp za pomocą skryptu/z CLI tylko podać nazwę można dostać od CODE_SIGN_IDENTY do program codesign :)

np sign='codesign -s "$CODE_SIGN_IDENTY" "$PATH_TO_APP"'


to zrobić programowo poprzez Objective C stosować KeyChain API, aby znaleźć element o nazwie CODE_SIGN_IDENTY. Oto, co robi aplikacja CLI o oznaczeniu kodu:

Powiązane problemy