Cel wdrożenia określa zdolność aplikacji do uruchamiania w starszych wersjach systemu iOS.
App with deployment target set to 10 will work on iOS version 10+ (10, 11, 12, 13 ...) but won't work on 9.x.
Kiedy pojawia się nowa wersja iOS, niektórzy ludzie nie zawracają sobie głowy aktualizacją swoich urządzeń do najnowszej wersji iOS, a tym samym can't download your app from the App Store
.
Przykład
Jeśli wybierzesz wyższy cel wdrożenia (e.g 12.1)
, Twoja aplikacja nie będzie mogła zostać pobrana dla osób, które mają nawet najnowsze urządzenia, ale mają starszą wersję iOS (iPhone X z 11.0). Z drugiej strony Jeśli wybierzesz najniższy możliwy cel wdrożenia (e.g 6.0)
, postarasz się, aby Twoja aplikacja była maksymalnie kompatybilna wstecz (więc nawet jeśli ktoś nie aktualizował swojego iOS od lat, będzie mógł pobrać Twoją aplikację).
UWAGA
Wiele (prawie wszystkich) nowszych frameworków i funkcji nie będzie działać poprawnie (Zachowaj się zgodnie z oczekiwaniami) na niższych wersjach iOS, co zwiększa prawdopodobieństwo awarii aplikacji.
Co wpływa na cel wdrożenia
Oto kilka czynników, które wymagają wyższego celu wdrożenia.
1) Korzystanie z najnowszego zestawu SDK systemu iOS (samodzielnie)
2) Korzystanie z najnowszych funkcji specyficznych dla iOS SDK (ograniczenia, nowsze pliki XIB itp.).
3) Korzystanie z szybko dostosowujących się zewnętrznych bibliotek / frameworków (np. Facebook SDK, Firebase itp.).
4) Wyższa wersja Swift (5.0) wymaga wyższego celu wdrożenia niż pisanie aplikacji w starszej wersji celu C) !Needs citation
.
ROZWIĄZANIE
Używamy Deploymate do maksymalnego wsparcia wstecznego. Pomaga nam głównie w ostrzeżeniu następujących kwestii:
1) Nowsze interfejsy API, które nie będą działać na niższych wersjach iOS
2) Korzystanie z przestarzałych metod, które nie będą działać w nowszych wersjach systemu iOS.
To wtedy zaczynasz naprawiać kod, aby był dostępny dla niższych wersji iOS dla maksymalnej kompatybilności.
Uwaga: Xcode informuje również o kilku pułapkach. Deploymate nie jest z nami współpracownikami ani nie płaci nam w żadnej formie. Możesz poszukać innych zamienników.