Odpowiedź jest oryginalny z czasów zanim w app zakupu. Prawidłowa odpowiedź jest teraz wysyła pojedynczy plik binarny i oferują płatną wersję pośrednictwem w rozbudowę aplikacji . Jest to nieco więcej kodu, ale jest to jedna przesyłka, a współczynnik konwersji będzie prawdopodobnie lepiej.
Jednakże, jeśli nadal chcesz wersjach aplikacji:
Xcode posiada dobre wsparcie dla wielu celów.
Z menu Project wybierz „nowy cel ...”. Dodaj kolejny iPhone wykonywalny (Cocoa Touch aplikacji) można następnie określić na podstawie zasobów Resouce przez które elementy są wliczone w cel. Może to obejmować tylko kompilowanie pewien kod do wersji płatnej.
Można uzyskać szybki inforamcji o tym, co jest i nie jest wliczone w bieżącym cel poprzez kliknięcie prawym przyciskiem myszy na „grup i plików” lista nagłówku (góra lewa oś) oraz umożliwienie docelowa członkostwa.
Przełączać się między budowania różne cele w taki sam sposób, jak przełączać między budynku na symulatorze lub iPhone.
Aby określić w czasie kompilacji, jak specyficzna klasa zachowuje można zrobić dwie rzeczy - to dwie wersje klasy których każdy zbudowany dla ich odpowiedniego docelowego lub można ustawić flagę czasu kompilacji dla pre-procesor. Wybierz cel w „grupach, a następnie Files” liście „get info” na ten cel. Przejdź do zakładki kompilacji i wyszukać „Preprocesuj”. Powinieneś zobaczyć element o nazwie „Preprocessor Makra” dodaj LITEdo celu lite i w ten sam sposób dodać PAIDdo swojego płatnego cel.
Thein w plikach źródłowych można określić w czasie kompilacji, która wersja kompilujesz za korzystanie #ifdef LITEetc.
Idąc jeszcze dalej, można ustawić flagę globalną lub zmienną składową AppDelegate oparciu o #ifdef LITE i zmienić zachowanie w czasie wykonywania dla Lite i płatnych aplikacji. Nie jestem pewien, widzę wartość w tym jednak.