Xcode Run script Build Phase tùy chọn “chỉ chạy script khi cài đặt”


89

Có tùy chọn "chỉ chạy tập lệnh khi cài đặt" trong Xcode Run script Build Phase, tôi không thể tìm thấy tài liệu về điều này. Nó làm gì?

Câu trả lời:


136

Với Run script chỉ khi cài đặt được chọn, script chỉ chạy khi Product Archive.


12
Không phải khi xây dựng / cài đặt trên một thiết bị? (Đó là: CMD-Bxây dựng và chạy đến một thiết bị vật lý (không phải sim) với thiết bị được cắm vào. Điều đó không được tính là "khi cài đặt" cho công tắc này?)
Olie

6
Gỡ lỗi-cài đặt trên thiết bị thực (xây dựng và chạy từ Xcode) không được tính là "cài đặt". Tập lệnh chạy chỉ chạy khi lưu trữ (được thử nghiệm với Xcode 9).
seeppp

Thực ra điều này chỉ đúng một phần. Nó phụ thuộc vào cài đặt DEPLOYMENT_PROCESSING. Tôi đang căn cứ vào việc chạy điều này trên Xcode 10. Có vẻ như khi bạn lưu trữ, DEPLOYMENT_PROCESSING được đặt thành CÓ và ghi đè cài đặt cho cấu hình. Tôi đã xác nhận điều này thông qua việc xây dựng và xem các cài đặt trong đầu ra vì tôi đã bật "Hiển thị các biến môi trường trong nhật ký xây dựng".
Mobile Ben

17

Trong Hướng dẫn Hệ thống Xây dựng Xcode (Xcode 3.2.x), nó nói:

Chỉ chạy script khi cài đặt. Chỉ chạy tập lệnh trong khi cài đặt bản dựng, tức là khi sử dụng tùy chọn cài đặt của xcodebuild hoặc khi cài đặt bản dựng Vị trí triển khai (DEPLOYMENT_LOCATION) và Xử lý hậu triển khai (DEPLOYMENT_POSTPROCESSING) được bật.


Khi bạn cần / muốn ...? Tôi khuyên bạn nên đọc tài liệu về DEPLOYMENT_LOCATION, DEPLOYMENT_POSTPROCESSING và TARGET_BUILD_DIR.
ericg

1
Đọc rồi, nhưng người ta dùng chúng cho những trường hợp nào?
Boon

15
V / v: khi nào bạn muốn sử dụng cái này: Tôi sử dụng cờ này trên các tập lệnh làm tăng số bản dựng, để nó chỉ xảy ra trên các bản dựng mà tôi lưu trữ để gửi cho người thử nghiệm beta (và không phải mọi lần tôi chạy ứng dụng)
Wayne

Hoặc khi tải tệp ký hiệu lên firebase hoặc crashlytics. Không cần tải lên trên mọi bản dựng gỡ lỗi.
seeppp

Trên thực tế, Fabric nói rằng các tệp biểu tượng nên được tải lên mỗi bản dựng. Có cách tốt hơn để định cấu hình việc tải lên dSYM. support.crashlytics.com/knowledgebase/articles/…
Nik Kov
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.