Mogę to zrobić , ale tak naprawdę nie jest to konieczne
Jak to zrobić
Jason Lee otrzymał odpowiedź. Podczas instalowania xCode wolałem zachować poprzednie instalacje niż je zastępować. Mam je więc w folderze instalacyjnym
Więc /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs
zawierają różne pliki SDK. (Zamień Xcode.app na prawidłowy numer) skopiuj poprzednie sdks do
/Applications/Xcode 3.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs
Oto mój folder po skopiowaniu jednego.
Teraz uruchom ponownie xCode i możesz ustawić poprzednie wersje sdk jako podstawowy sdk.
Dlaczego nie jest to konieczne
Odnawianie dokumentacji Apple
Aby użyć określonego zestawu SDK dla projektu Xcode, dokonaj dwóch wyborów w ustawieniach kompilacji projektu.
Wybierz cel wdrożenia .
To identyfikuje najwcześniejszą wersję systemu operacyjnego, na której można uruchomić oprogramowanie.
Wybierz podstawowy zestaw SDK
Twoje oprogramowanie może korzystać z funkcji dostępnych w wersjach systemu operacyjnego do wersji odpowiadającej podstawowym pakietom SDK włącznie. Domyślnie Xcode ustawia to na najnowszy system operacyjny obsługiwany przez Xcode.
Reguła jest Użyj najnowszej jako podstawowego zestawu SDK i ustaw docelowy poziom wdrożenia na minimalną wersję aplikacji, która ma być uruchomiona
Na przykład możesz użyć systemu iOS 7 jako podstawowego pakietu SDK i ustawić system iOS 6 jako cel wdrażania. Uruchom na symulatorze iOS 6, aby sprawdzić, jak działa na iOS 6. Zainstaluj symulator, jeśli nie jest dostępny z listą symulatorów.
Dodatkowo Możesz bezwarunkowo używać funkcji do iOS 6. I warunkowo możesz obsługiwać nowe funkcje iOS 7 dla nowych zaktualizowanych urządzeń, jednocześnie obsługując poprzednie wersje.
Można to zrobić za pomocą słabo powiązanych klas , słabo powiązanych metod , funkcji i symboli
https://developer.apple.com/library/ios/documentation/developertools/conceptual/cross_development/Using/using.html#//apple_ref/doc/uid/20002000-SW3
Słabe łączenie
Załóżmy, że w Xcode ustawiłeś docelowy poziom wdrożenia (minimalna wymagana wersja) na iOS6, a docelowy zestaw SDK (maksymalna dozwolona wersja) na iOS7. Podczas kompilacji kompilator słabo łączy wszystkie interfejsy wprowadzone w iOS7, jednocześnie silnie łącząc wcześniejsze interfejsy. Pozwoliłoby to kontynuować działanie aplikacji na iOS6, ale nadal korzystać z nowszych funkcji, gdy są one dostępne.