Otworzyłem projekt w Xcode 7 beta i otrzymuję następujące ostrzeżenia, których nie dostaję w Xcode 6:
All interface orientations must be supported unless the app requires
full screen.
A launch storyboard or xib must be provided unless the app requires
full screen.
Aplikacja używa orientacji pionowej tylko dla urządzeń i ustawiłem ją w ten sposób. Mam też storyboardy dla interfejsów iPhone'a i iPada. Nie mogę określić, dlaczego otrzymuję te ostrzeżenia. Czy to błąd beta Xcode 7?
Odpowiedzi:
To ostrzeżenie jest nowe dla systemu iOS 9, ponieważ obsługuje aplikacje o zmiennym rozmiarze z obsługą wielu okien. Wcześniej aplikacje były automatycznie skalowane do nowych urządzeń, które miały różne rozdzielczości wyświetlania sprzętu niż te w obrazie uruchamiania (czyli w zasadzie sposób, w jaki iOS wykrywa obsługiwane rozdzielczości interfejsu). Teraz aplikacje obsługujące wiele okien muszą definiować obsługiwane rozdzielczości, dołączając obraz uruchamiania lub scenorys dla wszystkich typów ekranów urządzeń.
Jeśli nie piszesz ponownie aplikacji, aby obsługiwała wiele okien, będziesz wymagać „pełnego ekranu”. To wskazówka dla iOS, że nie obsługujesz wielu okien i zasadniczo sprawia, że iOS 9 działa jak poprzednie wersje pod tym względem.
Tak więc, jeśli przesyłasz aktualizację aplikacji na iOS 9 i nie obsługujesz wielu okien, wszystko, co musisz zrobić, to przejść do ustawień celu projektu, wybrać Ogólne i pod `` Informacje o wdrożeniu '' poszukać pola wyboru o nazwie „Wymaga pełnego ekranu”. Zaznacz to, a ostrzeżenia znikną.
Z pewnością nie jest to błąd. Jeśli pojawi się to ostrzeżenie, Twoja aplikacja może mieć problemy podczas przesyłania. Nie jestem tego pewien, ponieważ nie przesłałem jeszcze aplikacji z iOS 9 GM Seed, ale z pewnością zaznaczę to pole :-)
źródło
Po prostu przejdź do celu, kliknij kartę „Ogólne”, znajdź sekcję „Informacje o wdrożeniu”, zaznacz „Wymaga pełnego ekranu”. :)
To takie proste, prawda?
Przy okazji, to nie jest najlepsze rozwiązanie. Będzie coraz więcej lepszych rozwiązań. Ale kiedy odpowiadałem na to pytanie, myślałem tylko, jak zabić ostrzeżenia. Nie wyjaśniłem, dlaczego to robię, ale jak to rozwiązać. Wersja beta Xcode może zmienić jego funkcje, więc zapewniam tylko „obejście” na tak wczesnym etapie. Więc jeśli uważasz, że moje rozwiązanie jest obejściem, zagłosuj na inne lepsze odpowiedzi. Ale to nie jest powód do głosowania przeciw. Dzięki :)
źródło
Dzieje się tak, ponieważ Apple dodał możliwość wykonywania wielu zadań w iOS 9. Wszystko, co musisz powiedzieć Xcode, to to, że Twoja aplikacja wymaga pełnego ekranu.
Dodaj klucz UIRequiresFullScreen do pliku Info.plist projektu Xcode i zastosuj wartość logiczną TAK.
Więcej informacji na ten temat w ogóle.
https://developer.apple.com/library/ios/documentation/WindowsViews/Conceptual/AdoptingMultitaskingOniPad/index.html
źródło
Właśnie zobaczyłem ten błąd i po przeczytaniu komentarzy na pewno chcę obsługiwać iPada i korzystanie z wielu okien. Jest to tak proste, jak sprawdzenie opcji orientacji urządzenia „Poziomo po lewej” i „Poziomo po prawej” i upewnienie się, że mój interfejs użytkownika je obsługuje.
Najlepszym sposobem, w jaki znalazłem dobrą obsługę wielu okien, jest użycie symulatorów o zmiennym rozmiarze lub, moim zdaniem, lepiej, użycie iPada Pro w XCode 7.1 i aktywowanie funkcji wielu okien, przeciągając od prawej. Po wykonaniu tych czynności moja aplikacja obsługuje te funkcje i mogę szybko sprawdzić, co muszę zaktualizować lub zoptymalizować, aby w pełni je obsługiwać.
źródło
Domyślnie orientacja urządzenia włącza tylko pionową, poziomą lewą i poziomą prawą. Musisz także włączyć Upside Down.
źródło
„Clean Build Folder” i buduj ponownie
Otrzymałem
All interface orientations must be supported unless the app requires full screen.
wiadomość dzisiaj w Xcode 7.3.1, pozornie bez powodu, bez żadnej powiązanej zmiany, którą wprowadziłem.LaunchScreen.storyboard
Requires full screen
.Wypróbowałem zwykły manewr, gdy Xcode pozostawia mnie zdziwionym jakimś-nowym-błędem-bez-powodu:
Product
menu.Clean Build Folder
( nieClean
).Product
>Build
.Żaden problem. Po kilku kolejnych sesjach kompilacji i uruchomienia komunikat o błędzie nie pojawił się jeszcze ponownie.
źródło
Czy podałeś opcję „Uruchom Storyboard” dla swojej aplikacji? A może właśnie dostarczyłeś statyczne obrazy dla różnych rozmiarów.
Sprawdź tutaj: https://developer.apple.com/library/prerelease/ios/documentation/UserExperience/Conceptual/MobileHIG/LaunchImages.html
źródło
Ustaw UIRequiresFullScreen na YES w Info.plist. I zaznacz Wymaga pełnego ekranu .
źródło