2011-03-07 12 views
10

Tôi đã thêm hình ảnh .png vào dự án Xcode để sử dụng có điều kiện như làm ảnh chụp màn hình của chế độ xem Tuy nhiên, vì điều này không cần thiết cho phiên bản Phát hành của ứng dụng, tôi muốn tìm cách loại trừ chúng bằng một số loại cài đặt cho Mục tiêu. Tôi hy vọng có thể có một giải pháp như sử dụng macro #if DEBUG để biên dịch gỡ lỗi, có thể hoạt động cho các dòng mã nguồn. Nhưng, trong trường hợp tệp được bao gồm trong gói dự án, tôi gặp khó khăn khi tìm câu trả lời.Làm cách nào để loại trừ tệp hình ảnh trong gói dự án Xcode, có điều kiện cho phiên bản Phát hành?

+3

Để loại trừ tệp khỏi bản dựng sản phẩm, tôi sử dụng cài đặt EXCLUDED_SOURCE_FILE_NAMES được mô tả trong bài đăng trên blog này: http://twobitlabs.com/2012/01/excluding-files-from-production-xcode-builds/ – ToddH

+0

Cảm ơn bạn đã câu trả lời đúng. Giải pháp dựa trên cài đặt xây dựng này là những gì tôi đang tìm kiếm thay vì dựa trên mục tiêu. – petershine

Trả lời

16

Trong Xcode 3, có một chế độ xem phía trên trình chỉnh sửa liệt kê các tệp trong dự án. Có một hộp kiểm ở phía bên phải của chế độ xem đó cho mỗi tệp và bạn có thể bỏ chọn hộp để xóa tệp khỏi mục tiêu hiện tại.

Trong Xcode 4, hiển thị Điều hướng dự án ở bên trái của cửa sổ và hiển thị Trình kiểm tra tệp ở bên phải, trong khu vực Tiện ích. Khi bạn chọn một tệp, bạn sẽ thấy khu vực Thành viên mục tiêu với danh sách các mục tiêu và hộp kiểm. Nếu bạn muốn loại trừ tệp khỏi một mục tiêu cụ thể, hãy bỏ chọn hộp bên cạnh mục tiêu đó. Dưới đây là một bức tranh:

enter image description here

Đây là một chút khác nhau từ không bao gồm các file từ chỉ số xây dựng của một mục tiêu duy nhất. Tuy nhiên, tôi nghĩ đó là cơ chế đơn giản nhất để sử dụng cho tình huống mà bạn mô tả. Chỉ cần sao chép mục tiêu hiện tại của bạn để bạn có một bản sao mà bạn có thể sử dụng để tạo ảnh chụp màn hình. Xóa các tệp thừa khỏi mục tiêu sản xuất của bạn nhưng để chúng trong mục tiêu ảnh chụp màn hình, như được mô tả ở trên.

+0

Cảm ơn bạn vì câu trả lời hữu ích này. Tôi khá vui vì điểm thưởng của tôi không bị lãng phí. Bạn có phiền khi cho phép tôi theo dõi bạn trên Twitter hay GitHub không? – petershine

+0

Loại bạn hỏi và tôi hoàn toàn không phiền, nhưng tôi không tweet. Đó là một sự xao lãng nữa mà tôi không cần. ;-) Tôi rất vui vì tôi có thể giúp đỡ. – Caleb

+1

câu trả lời này là một viên ngọc cho tôi nhưng từ góc độ ngược lại. Tôi đã tìm kiếm cách tìm xem tệp có được đưa vào mục tiêu hay không. Cảm ơn @Caleb – sdjuan

3

Mục nhập của mục tiêu giống nhau cho tất cả các bản dựng, vì vậy không có hộp kiểm nào sẽ làm điều đó cho bạn.

Tất cả những điều thực sự xảy ra là các tệp hình ảnh như .png hoặc bất kỳ thứ gì được thêm vào giai đoạn nguồn tài nguyên gói sao chép. Bạn có thể loại bỏ chúng khỏi giai đoạn đó và thay vào đó tạo ra một giai đoạn xây dựng kịch bản tùy chỉnh bằng cách sử dụng một kịch bản lệnh shell. Nó sẽ mặc định để in ra tất cả các biến môi trường được thiết lập bởi xcode, từ đó bạn sẽ có thể viết một kịch bản mà chỉ thực hiện các bản sao khi nói $ {BUILD_STYLE} là 'Debug'.

Bạn có thể muốn $ {BUILD_STYLE}, $ {CONTENTS_FOLDER_PATH} và $ {INPUT_FILE_PATH} cho người mới bắt đầu.

Các vấn đề liên quan