Xcode Run script Build Phase „uruchom skrypt tylko podczas instalacji”

89

Jest opcja „uruchom skrypt tylko podczas instalacji” w fazie budowania skryptu Xcode Uruchom skrypt, nie mogę znaleźć dokumentacji na ten temat. Co to robi?

Dar
źródło

Odpowiedzi:

136

Jeśli opcja Uruchom skrypt tylko podczas instalacji jest zaznaczona, skrypt działa tylko wtedy, gdy jest wykonywana archiwizacja produktów.

vladof81
źródło
12
Nie podczas budowania / instalacji na urządzeniu? (To znaczy: CMD-Bzbuduj i uruchom na urządzeniu fizycznym (nie na karcie SIM) z podłączonym urządzeniem. Czy to nie liczy się jako „podczas instalacji” tego przełącznika?)
Olie
6
Instalowanie debugowania na rzeczywistym urządzeniu (kompilacja i uruchamianie z Xcode) nie liczy się jako „instalacja”. Skrypt uruchamiania działa tylko podczas archiwizacji (przetestowany z Xcode 9).
seeppp
Właściwie jest to tylko częściowo poprawne. Zależy to od ustawienia DEPLOYMENT_PROCESSING. Opieram się na uruchomieniu tego na Xcode 10. Wygląda na to, że podczas archiwizacji DEPLOYMENT_PROCESSING jest ustawione na YES i zastępuje ustawienie konfiguracji. Potwierdziłem to, budując i przeglądając ustawienia w danych wyjściowych, ponieważ mam włączoną opcję „Pokaż zmienne środowiskowe w dzienniku kompilacji”.
Mobile Ben
17

W przewodniku po systemie Xcode Build (Xcode 3.2.x) jest napisane:

Uruchom skrypt tylko podczas instalacji. Uruchamia skrypt tylko podczas kompilacji instalacji, to znaczy podczas korzystania z opcji instalacji programu xcodebuild lub gdy są włączone ustawienia kompilacji Lokalizacja wdrożenia (DEPLOYMENT_LOCATION) i Postprocessing wdrażania (DEPLOYMENT_POSTPROCESSING).

ericg
źródło
Kiedy potrzebujesz / chcesz ...? Sugerowałbym przeczytanie dokumentacji dotyczącej DEPLOYMENT_LOCATION, DEPLOYMENT_POSTPROCESSING i TARGET_BUILD_DIR.
ericg
1
Przeczytaj to, ale w jakich sytuacjach ludzie ich używają?
Boon
15
Re: kiedy chciałbyś tego użyć: używam tej flagi w skryptach, które zwiększają numer kompilacji, więc dzieje się to tylko w kompilacjach, które archiwizuję, aby wysłać do testerów wersji beta (a nie za każdym razem, gdy uruchamiam aplikację)
Wayne
Lub podczas przesyłania plików symboli do Firebase lub Crashlytics. Nie ma potrzeby przesyłania tego przy każdej kompilacji do debugowania.
seeppp
W rzeczywistości Fabric mówi, że pliki symboli powinny być przesyłane w każdej kompilacji. Istnieją lepsze sposoby konfiguracji przesyłania dSYM. support.crashlytics.com/knowledgebase/articles/…
Nik Kov