Xcode Jalankan skrip Build Tahap opsi "jalankan skrip hanya saat menginstal"


90

Ada opsi "jalankan skrip hanya saat menginstal" di Xcode Jalankan skrip Build Phase, saya tidak dapat menemukan dokumentasi tentang ini. Apa fungsinya?

Jawaban:


139

Dengan Jalankan skrip hanya saat menginstal dicentang, skrip hanya berjalan saat melakukan Arsip Produk.


12
Tidak saat membangun / memasang di perangkat? (Yaitu: CMD-Bmembangun & menjalankan ke perangkat fisik (bukan sim) dengan perangkat terpasang. Apakah itu tidak dihitung sebagai "saat memasang" untuk sakelar ini?)
Olie

6
Penginstalan debug di perangkat nyata (build & run dari Xcode) tidak dihitung sebagai "menginstal". Skrip yang dijalankan hanya berjalan saat pengarsipan (diuji dengan Xcode 9).
merembes ke

Sebenarnya ini hanya sebagian yang benar. Itu tergantung pada setelan DEPLOYMENT_PROCESSING. Saya mendasarkan ini dari menjalankan ini pada Xcode 10. Tampaknya ketika Anda mengarsipkan, DEPLOYMENT_PROCESSING diatur ke YES dan menimpa pengaturan untuk konfigurasi. Saya telah mengonfirmasi hal ini melalui pembuatan dan melihat pengaturan dalam output karena saya telah mengaktifkan "Tampilkan variabel lingkungan di log build".
Ponsel Ben

17

Dalam Panduan Sistem Pembuatan Xcode (Xcode 3.2.x), dikatakan:

Jalankan skrip hanya saat menginstal. Menjalankan skrip hanya selama build instal, yaitu saat menggunakan opsi instal xcodebuild atau saat setelan build Deployment Location (DEPLOYMENT_LOCATION) dan Deployment Postprocessing (DEPLOYMENT_POSTPROCESSING) aktif.


Kapan Anda membutuhkan / ingin ...? Saya sarankan membaca dokumentasi di DEPLOYMENT_LOCATION, DEPLOYMENT_POSTPROCESSING, & TARGET_BUILD_DIR.
ericg

1
Bacalah, tetapi untuk situasi apa orang menggunakannya?
Boon

15
Re: kapan Anda ingin menggunakan ini: Saya menggunakan flag ini pada skrip yang menaikkan nomor build, sehingga itu hanya terjadi pada build yang saya arsipkan untuk dikirim ke penguji beta (dan tidak setiap kali saya menjalankan aplikasi)
Wayne

1
Atau saat mengupload file simbol ke firebase atau crashlytics. Tidak perlu menguploadnya di setiap build debug.
merembes ke

Sebenarnya Fabric memberi tahu bahwa file simbol harus diunggah setiap bangunan. Ada cara yang lebih baik untuk mengonfigurasi pengunggahan dSYM. support.crashlytics.com/knowledgebase/articles/…
Nik Kov
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.