2016-07-16 18 views
15

Czy aplikacje Xcode 8 Swift 3 działają z powodzeniem na iOS 7?Czy aplikacje Xcode 8 Swift 3 działają z powodzeniem na iOS 7?

Próbowałem ustalić, czy przeprowadzono kilka testów opisanych poniżej, ale czy ekspert, który lepiej zrozumie rozwój App Store, pomoże wyjaśnić powody sukcesów i niepowodzeń, w tym poniższe pytania?


testowy 1.

Więc ja otworzył Xcode 7.3.1 i stworzył aplikację z Swift 2.2. Mam zamiar wdrożyć aplikację od iOS 7 do iOS 10.

Uruchamiam aplikację na symulatorze iPhone'a iOS 9.3 z sukcesem, a następnie uruchamiam aplikację na prawdziwym urządzeniu iPhone z systemem iOS 7.1.2 z powodzeniem.


testowy 2.

Następnie wziąłem ten sam projekt i otworzył ją w Xcode 8 Beta 2 (I został poproszony o aktualizację do 2.3 lub obu Swift Swift 3. zaktualizować na Swift 2.3, a następnie na Swift 3.)

Po ręcznym wprowadzeniu wdrożenia docelowego systemu iOS jako 7.0 uruchamiam aplikację na symulatorze iPhone'a iOS 10 Beta 2 z powodzeniem. Jednak próbuję uruchomić aplikację na urządzeniu iPhone z systemem iOS 7.1.2, ale tym razem bez powodzenia, wyświetlany jest poniższy błąd. I powtórzyć test z Swift Swift 2.3 i 3 z tego samego błędu:

Could not locate device support files

This iPhone 4S is running iOS 7.1.2 (11D257), which may not be supported by this version of Xcode.


testowy 3.

Więc następnym razem spróbuj zainstalować plik .ipa aplikacji utworzonego w Xcode 8 Beta 2 bezpośrednio do rzeczywistego urządzenia iPhone z systemem iOS 7.1.2 przez iTunes po uzyskaniu archiwum aplikacji (Produkt> Archiwum ...)

Po zakończeniu przesyłania pliku .ipa do urządzenia iPhone z systemem iOS 7.1.2 przez iTunes, następnie uruchom aplikację na aktualnej urządzenie, tym razem z sukcesem.


Wyniki. enter image description here


Pytania:

  • Co mogę zrobić wszystkich wyników badań w powyższej tabeli?

  • Co ważne, jeśli przyjdzie czas na dystrybucję aplikacji za pośrednictwem sklepu App Store utworzonego w Xcode 8 za pomocą Swift 3, można bezpiecznie oczekiwać aplikacji, która została pomyślnie zainstalowana za pośrednictwem iTunes na urządzeniu iPhone z systemem iOS 7.1.2, będzie nadal kompatybilny dla wszystkich urządzeń z systemem iOS 7 podczas pobierania w App Store?

  • Xcode 7.3.1 pozwala na testowanie i debugowanie urządzeń z iOS 7 do iOS 9 w fazie rozwoju?

  • Xcode 8 nie pozwala iOS 7 urządzeń do testowania i debugowania, podczas gdy w rozwoju, ale nadal umożliwia wdrażanie aplikacji na iOS 7 Urządzenia?

  • co jest punktem Swift 2.3, w pośrednim etapie jej szybkim 3?

+1

Należy starać się ograniczyć się do jednej kwestii naraz. – Rob

+1

Re Swift 2.3 [Co nowego w Swift] (https://developer.apple.com/videos/play/wwdc2016/402/) powiedział: „Jeśli nie jesteś całkiem gotowy, aby przejść do Swift 3 Swift 2.3 jest po prostu Swift 2.2, który działa z nowymi pakietami SDK, okay, i będziemy akceptować przesyłanie do sklepu z aplikacjami, zarówno z Swift 3, jak i 2.3, ale powinieneś wiedzieć, że istnieje kilka bardzo kluczowych funkcji w Xcode, które zależą od Swift 3, takich jak Place zabaw i dokumentacja oraz nowe funkcje, takie jak Thread Sanitizer. " – Rob

+1

Chciałbym, aby samo pytanie mogło zostać poddane pod głosowanie! Dzięki za matrycę wyników, naprawdę pomocna! –

Odpowiedz

10

Wahałbym się wyciągnąć zbyt wiele wniosków z waszych testów empirycznych. Konkretnie chciałbym nie zakładać tylko dlatego, że masz go uruchomić na iOS 7, która jest gwarantowana do pracy na iOS 7. Pojawiają się one tylko do zagwarantowania wsparcia iOS 8+.

Tak na marginesie, Apple sugeruje generalnie wspiera tylko jedną wersję na iOS z powrotem, tak. I, as of May 9th, tylko 5% urządzeń pracuje na systemie iOS 7 lub wcześniejszym (i najprawdopodobniej ulegnie dalszemu zmniejszeniu do czasu zwolnienia systemu iOS 10).

+2

Dzięki, Rob. "5% urządzeń ma system iOS 7 lub wcześniejszy" wciąż jest dużo urządzeń. Mam preferencję, aby udostępnić aplikację tylu użytkownikom, którzy chcą ją uruchomić, którzy nie mają lub nie mogą jej zaktualizować do nowej wersji na iOS. Decyzja o pójściu do Swift 3 i ewentualnie pozostawieniu iOS7 (szczególnie podczas testów) to taka, której jeszcze nie rozwiązałem. – user4806509

+3

W porządku. Przy okazji, to nie jest 5% przy użyciu iOS 7. To 5% przy użyciu iOS 7 _lub wcześniej ._ Może to obejmować cały sprzęt związany z wcześniejszymi wersjami iOS (np. Mam kilka dotknięć iPoda zablokowanych w wersjach 6 i wcześniejszych na iOS) . Istnieje bardzo niewiele urządzeń zablokowanych w systemie iOS 7 (np. IPhone 4, ale nie 3GS ani 4s). Podsumowując, udział w rynku iOS 7 może z łatwością być znacznie niższy niż 5%. Trzeba to rozważyć, porównując koszty dodatkowe i/lub rezygnację z funkcjonalności aplikacji. Ale z pewnością to twoja rozmowa. – Rob

+0

Aby obejść scenariusze, w których * masz * do debugowania aplikacji na iOS 7 z Xcode 8, po aktualizacji do konwersji na Swift 2.3, odkryłem, że możesz wdrożyć na urządzeniach z systemem iOS 7, dowiązując symbolicznie stare pliki obsługi z Xcode 7.3.1 , ex: sudo ln -s /Aplikacje/Xcode.7.3.1.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport/7.*/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS. platforma/DeviceSupport / – jc1001

2

Do Xcode 8 Swift 3 apps run on iOS 7 successfully?

Zobacz Swift 3 iOS compatibility. Gwarantowana obsługa iOS 8, brak pewności co do iOS 7. Zobacz this answer na Swift 2 i iOS 7. Ostatni komentarz mówi, że Apple prawdopodobnie nie chce, abyś i tak kierował na iOS 7. Jeśli to nie działa, prawdopodobnie nie jest to Swift, ale Xcode, który mówi "nie".

What can I make of all the testing outcomes in the table above?

Nie jestem pewien, co masz na myśli.

Prawdopodobnie nigdy nie można bezpiecznie oczekiwać niczego, w czym starasz się obejść Xcode.

Xcode 7.3.1 allows devices from iOS 7 through to iOS 9 for testing and debugging while in development?

I? Xcode 8 nie. iOS 7 do iOS 9 to dwie wersje, iOS 8 do iOS 10 to dwie wersje.

What is the point of Swift 2.3 as an intermediate step to Swift 3?

Bo Swift 3 jest taki poważny skok z Swift 2.2, zapewniają one Swift 2.3, jeśli nie jesteś gotowy, aby przejść do Swift 3 jeszcze. Zalecają jednak przejście do Swift 3. Swift 3 umożliwia także dostęp do nowych funkcji.

Powiązane problemy