2012-01-13 29 views
10

Tôi đã phát triển một phiên bản lite của một ứng dụng. Bây giờ tôi muốn tạo ra một phiên bản trả tiền. Vì vậy, tôi đã nhân đôi mục tiêu, thay đổi tên của nó (vì vậy thay đổi plist và các công cụ khác với tên đó) và bây giờ tôi phải phân biệt trong mã. Tôi đang sử dụng Xcode 4.2 và tôi thấy trên web mà tôi phải tạo một lá cờ tiền xử lý. Vấn đề của tôi là cờ này trong Xcode 4.2 chỉ nằm trong cài đặt xây dựng của dự án chứ không phải trong cài đặt xây dựng của đích.Cách phân biệt nhiều mục tiêu với Xcode 4.2

tôi sẽ cần để có thể làm điều gì đó như thế này:

#ifdef paid 
    ... 
#else 
    ... 
#endif 
+0

có thể trùng lặp với [XCode 4 - cách tạo phiên bản "lite"] (http://stackoverflow.com/questions/5605146/xcode-4-how- to-build-a-lite-version) –

Trả lời

18

macro Sử dụng tiền xử lý để làm điều này. Đi tới Target -> Build Setting và chọn "Tất cả cấu hình" (điều này rất quan trọng). Trường tìm kiếm tiếp theo "Preprocessor Macros".

Trong trường này, thêm cờ ở dạng cũ. PHIÊN BẢN TRẢ TIỀN. Bây giờ bạn có thể sử dụng cờ này trong mã:

#ifdef PAID_VERSION 
    NSLog(@"Paid version"); 
#else 
    NSLog(@"Lite version"); 
#endif 
+0

Tôi không tìm thấy bộ tiền xử lý vì mục tiêu mà tôi không chọn tất cả cấu hình :) CẢM ƠN! – JackTurky

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