iOS 8.2 beta 2 – oto nowości

iOS beta 8.2 2

  Wczoraj wieczorem firma Apple udostępniła iOS 8.2 beta 2, nowa wersja systemu operacyjnego jest obecnie dostępna wyłącznie dla twórców aplikacji na platformę iOS. Chociaż mówimy o iOS beta 8.2 2 minęły trzy tygodnie od pierwszej wersji wydanej przez Apple, niestety nie mamy tak wielu nowości, jak byśmy się spodziewali, te z Cupertino rozwiązują jedynie problemy operacyjne, bez wdrażania innych nowych funkcji.

  Pomimo braku widocznych wiadomości dla iOS beta 8.2 2, nadal mamy dziennik zmian z aktualnościami udostępnianymi przez firmę Apple w portalu dedykowanym deweloperom na jej stronie internetowej, opisującym niewidoczne zmiany dokonane przez zapalniki z Cupertino. Poniżej znajdziesz całą listę nowości zaprojektowaną przez firmę Apple, aby zapewnić deweloperom niezbędne informacje dotyczące internetowych zmian w iOS 8.2 beta 2, dzięki czemu będziesz dokładnie wiedział, co nowego kryje się w środku.

  iOS 8.2 beta 2 można pobrać ze strony dedykowanego portalu programistów, jeśli masz roczną subskrypcję dla programistów.

iOS 8.2 beta 2 – oto nowości

Uwagi i znane problemy

Poniższe problemy dotyczą używania zestawu SDK systemu iOS 8.2 do tworzenia kodu.

CloudKit

Note

Pojedynczy CKAsset instancji nie można już ustawić jako wartości w wielu rekordach CKRecords.

Dostawcy dokumentów

Uwagi

  • Twoja aplikacja wymaga uprawnień iCloud, aby mogła być używana jako dostawca dokumentów.

  • Połączenia com.apple.developer.icloud-container-identifiers wymagane jest uprawnienie.

Znane problemy

  • Po obróceniu selektora dokumentów do pozycji poziomej pasek stanu jest ukryty.

  • Po wywołaniu selektora dokumentów w orientacji poziomej widok zawierający dokument może zostać przesunięty pod pasek nawigacyjny.

Rozszerzenia aplikacji

Uwagi

  • Rozszerzenia aplikacji wymagają fragmentu arm64, aby działać na urządzeniach 64-bitowych. Jeśli spróbujesz uruchomić plasterek armv7 na urządzeniu 64-bitowym, nie zadziała.

  • Aplikacje muszą mieć wycinek arm64, jeśli pakiet zawiera platformę, z którą łączy się zarówno aplikacja, jak i rozszerzenie aplikacji.

System plików

Note

Układ systemu plików kontenerów aplikacji został zmieniony na dysku. Zamiast polegać na zakodowanej na stałe strukturze katalogów, użyj metodyNSSearchPathForDirectoriesInDomains funkcja lub URLForDirectory:inDomain:appropriateForURL:create:error:metoda NSFileManager klasa. Widzieć Dostęp do plików i katalogów in Przewodnik programowania systemu plików.

Czcionki

Note

Aby poprawić czytelność, zwiększono rozmiar tajskiej czcionki systemowej. Jeśli nie podejmiesz odpowiednich działań, spowoduje to przycięcie w wielu miejscach interfejsu użytkownika:

  1. Zastosowanie UILabel tak dużo jak to możliwe. Jeżeli korzystasz z Konstruktora interfejsów, upewnij się, że opcja Podglądy klipów nie jest zaznaczona. UIKit powiększy region przycinania, jeśli to konieczne, aby nie przycinać tekstu.

  2. Użyj typu dynamicznego. Dzięki temu w etykietach wielowierszowych lub polach tekstowych nie będzie nakładających się glifów.

Jeśli nie możesz wykonać 1 i 2, ponieważ implementujesz własne widoki, musisz wdrożyć środki, aby nie przycinać. Możesz użyć CoreText, aby znaleźć odpowiedni region przycinania dla linii tekstu, wywołując:

CTLineGetBoundsWithOptions(lineRef, kCTLineBoundsIncludeLanguageExtents);

Aby uniknąć nakładania się glifów w elementach tekstu wielowierszowego, dostosuj wysokość linii. Zalecane jest dodatkowe 30%.

Dzięki temu działaniu Twoja aplikacja będzie działać lepiej w innych językach, w tym w języku arabskim, hindi i wietnamskim.

iCloud

Note

Przekazywanie poczty i funkcja AirDrop mogą przestać działać po zmianie hasła do usługi iCloud na stronie appleid.apple.com.

Obejście: Wyloguj się i wróć do iCloud na urządzeniu.

iCloud Napęd

Note

URLForUbiquityContainerIdentifier: może wrócić nil podczas uruchamiania aplikacji w Xcode. Jeśli tak, otwórz Preferencje systemowe, przejdź do iCloud > iCloud Drive i włącz Xcode.

klawiatury

Naprawiono w wersji beta 2

Dodatkowe klawiatury, w tym klawiatury innych firm, mogą nie pojawiać się w przeglądarce Safari, Mapach lub aplikacjach innych firm w symulatorze iOS.

Wiadomości

Znana kwestia

Twoje urządzenie może przejść w stan, w którym nawiązywanie rozmów w Wiadomościach może zająć dużo czasu.

Obejście: Zrestartuj urządzenie.

Centrum powiadomień

Note

Harmonogram i przeznaczenie widgetPerformUpdateWithCompletionHandler: ma służyć jako wygodne miejsce dla całej logiki aktualizacji danych/modeli. Jeśli zostanie wdrożony, system będzie w odpowiednich momentach wywoływał widget w celu aktualizacji swojego stanu, zarówno gdy widoczne jest Centrum Powiadomień, jak i w tle. Aby umożliwić aktualizacje w tle, wymagana jest implementacja. Oczekuje się, że widżet będzie w miarę możliwości aktualizował asynchronicznie i poza głównym wątkiem. Widżety powinny wywołać blok argumentów po zakończeniu pracy, przekazując odpowiedni NCUpdateResult. Widżety NIE powinny blokować powrotu zviewWillAppear: o wynikach tej operacji. Zamiast tego widżety powinny ładować stan pamięci podręcznej viewWillAppear: w celu dopasowania stanu widoku z ostatniego viewWillDisappear:, a następnie płynnie przechodź do nowych danych, gdy tylko zostaną dostarczone.

Sesja NSURLS

Note

Połączenia NSURLSessionTask class udostępnia nową właściwość „priorytetową” z trzema powiązanymi stałymi: NSURLSessionTaskPriorityDefault,NSURLSessionTaskPriorityLow, NSURLSessionTaskPriorityHigh. NSURLSessionTask priorytetów można użyć do określenia priorytetu wielu żądań i odpowiedzi kierowanych do tego samego hosta. Należy pamiętać, że priorytet jest wskazówką, a nie ścisłą gwarancjąNSURLSessionTask wydajność.

Aby uzyskać szczegółowe informacje na temat użytkowania NSURLSessionTask priorytety, patrz NSURLSession.h nagłówkowy, który jest dostarczany przez framework Foundation.

Telefon

Note

Aby aktywować funkcję połączeń Wi-Fi w T-Mobile (tylko w USA), wykonaj następujące kroki:

  • Wybierz Ustawienia > Telefon > Połączenia Wi-Fi.

  • Przełącz przełącznik Połączenia Wi-Fi w położenie WŁ.

  • Jeżeli operator nie posiada zarejestrowanego adresu alarmowego użytkownika, zostaniesz poproszony o jego dodanie przed aktywacją tej funkcji.

ZDJĘCIA

Uwagi

  • Przed włączeniem i podczas korzystania z biblioteki zdjęć iCloud w wersji beta utwórz kopię zapasową swojej biblioteki zdjęć, wykonując następujące czynności:

    • Importowanie na komputer Mac przy użyciu iPhoto

    • Importowanie na komputer Mac za pomocą programu Image Capture

  • Biblioteka zdjęć iCloud w wersji beta nie będzie pobierać zdjęć i filmów z iTunes zsynchronizowanych z Twoim urządzeniem. Wszelkie zdjęcia i filmy zsynchronizowane z Twoim urządzeniem z iTunes zostaną usunięte, gdy włączysz bibliotekę zdjęć iCloud w wersji beta.

  • iPhoto dla iOS nie zostanie uruchomione w wersji beta systemu iOS 8. Uruchomienie aplikacji Photos.app spowoduje migrację zmian wprowadzonych w iPhoto do biblioteki zdjęć systemu iOS 8. Upewnij się, że dane iPhoto dla iOS znajdują się w kopii zapasowej urządzenia.

  • Możliwość automatycznej optymalizacji miejsca na urządzeniu jest włączona dla wszystkich kont większych niż 5 GB.

  • Podczas korzystania z Udostępniania rodzinnego iCloud włączone są zarówno Udostępnianie zdjęć w iCloud, jak i Mój strumień zdjęć.

Profile udostępniania

Znana kwestia

Jeśli dokonałeś aktualizacji do wersji beta 8.2 z poprzednich wersji beta iOS 8, Twoje aplikacje mogą ulegać awariom z powodu problemów z profilem udostępniania.

Obejście:

  1. Podłącz urządzenie przez USB do komputera Mac.

  2. Uruchom Xcode.

  3. Wybierz polecenie Okno > Urządzenia.

  4. Kliknij prawym przyciskiem myszy urządzenie w lewej kolumnie i wybierz „Pokaż profile udostępniania”.

  5. Kliknij odpowiedni profil udostępniania.

  6. Naciśnij przycisk.

  7. Kontynuuj usuwanie wszystkich profili, których to dotyczy.

  8. Zainstaluj ponownie aplikację.

Siri

Naprawiono w wersji beta 2

Obsługa Siri dla singapurskiego języka angielskiego była wyłączona w poprzedniej wersji beta.

UIKit

Uwagi

  • UILabel ma domyślną wartość TAK dla clipsToBounds. To różni się od normalnego UIView domyślnie NIE.

  • Połączenia leftLayoutGuide i rightLayoutGuide Interfejsy API zostały usunięte. Proszę skorzystać z layoutMargins zamiast tego nieruchomość.

Zestaw obserwacyjny

Uwagi

  • Połączenia WKInterfaceMap API uległo zmianie. Konkretnie, setMapRect: i setCoordinateRegion: zostały zastąpione przezsetVisibleMapRect: i setRegion: odpowiednio.

  • Połączenia WKInterfaceController metoda initWithContext: zostało zdeprecjonowane. Proszę użyć awakeWithContext: Zamiast. Wyznaczony inicjator dla WKInterfaceController jest teraz init.

  • Aplikacja WatchKit może poprosić zawartą w niej aplikację na iOS o wykonanie funkcji za pomocą WKInterfaceController APIopenParentApplication:reply:. Delegat aplikacji zawierającej aplikację musi zostać zaimplementowanyapplication:handleWatchKitExtensionRequest:reply:.

  • Oparta na stronach aplikacja WatchKit może dynamicznie zmieniać kolejność stron na poziomie głównym za pomocąreloadRootControllersWithNames:contexts:.

  • Wiersze w a WKInterfaceTable mają teraz domyślny wygląd. Wygląd ten można zastąpić, określając wartości koloru tła, marginesu, promienia narożnika i wysokości wiersza w Konstruktorze interfejsów.

Naprawiono w wersji beta 2

  • Kliknięcie ikony/treści powiadomienia w oknie zegarka nie uruchamia głównej aplikacji w symulatorze iOS.

  • Kliknięcie przycisku Build and Run nie powoduje uruchomienia okna podglądu.

  • Niestandardowy kolor szarfy dla kontrolerów powiadomień nie jest obecnie wyświetlany w Konstruktorze interfejsów, ale pojawia się w symulatorze systemu iOS.

  • Instalowanie aplikacji WatchKit może przestać działać w symulatorze iOS.

  • Połączenia WKInterfaceController metoda addMenuItemWithImage:title:action: nie działa w symulatorze iOS.

Znane problemy

  • W iOS Simulator przycisk Emoji jest zawsze widoczny, niezależnie od wybranego trybu wprowadzania.

  • Połączenia WKInterfaceController metoda presentTextInputControllerWithSuggestions:completion: nie jest w pełni obsługiwana w symulatorze iOS. Sugestie tekstowe działają, ale dyktowanie i emoji nie.

Połączenia Wi-Fi (tylko T-Mobile w USA)

Note

Nazwa operatora na pasku stanu będzie wyświetlać „T-Mobile Wi-Fi”, gdy urządzenie będzie mogło wykonywać i odbierać połączenia Wi-Fi.