Udostępnij za pośrednictwem


Wprowadzenie do systemu iOS 9

W tym artykule przedstawiono wszystkie nowe i zmodyfikowane interfejsy API oraz funkcje dostępne w systemie iOS 9 dla deweloperów platformy Xamarin.iOS.

Logo systemu iOS 9

Firma Apple dodała kilka nowych interfejsów API i usług w systemie iOS 9 wraz z wieloma ulepszeniami istniejących funkcji.

3D Touch

Nowość dla systemów iOS 9 i i Telefon 6s i i Telefon 6s Plus, 3D Touch dodaje gesty wrażliwe na nacisk do aplikacji systemu iOS. Dzięki funkcji 3D Touch aplikacja i Telefon jest teraz w stanie nie tylko powiedzieć, że użytkownik dotyka ekranu urządzenia, może również zrozumieć, ile nacisku wywiera użytkownik i reaguje na różne poziomy ciśnienia.

Funkcja 3D Touch udostępnia następujące funkcje aplikacji:

  • Czułość nacisku — aplikacje mogą teraz mierzyć, jak ciężko lub lekko użytkownik dotyka ekranu i korzysta z tych informacji. Na przykład aplikacja do malowania może sprawić, że linia jest grubsza lub cieńsza w zależności od tego, jak ciężko użytkownik dotyka ekranu.
  • Zobacz i pop — Aplikacja może teraz zezwolić użytkownikowi na interakcję z danymi bez konieczności przechodzenia z bieżącego kontekstu. Naciskając mocno na ekranie, mogą zajrzeć do elementu, który są zainteresowani (na przykład podgląd wiadomości). Naciskając mocniej, mogą wyskakować do elementu.
  • Szybkie akcje — szybkie akcje , takie jak menu kontekstowe, które można pojawić, gdy użytkownik kliknie prawym przyciskiem myszy element w aplikacji klasycznej. Za pomocą szybkich akcji można dodawać typowe, szybkie i łatwe do uzyskiwania dostępu skróty do funkcji w aplikacji z poziomu ikony ekranu głównego na urządzeniu z systemem iOS.

Aby dowiedzieć się więcej, zobacz przewodnik Wprowadzenie do funkcji 3D Touch .

Zabezpieczenia transportu aplikacji

Nowość w systemie iOS 9 usługa App Transport Security (ATS) wymusza bezpieczne połączenia między zasobami internetowymi (takimi jak serwer zaplecza aplikacji) i aplikacją. Usługa ATS zapewnia, że cała komunikacja internetowa jest zgodna z najlepszymi rozwiązaniami dotyczącymi bezpiecznego połączenia, zapobiegając przypadkowemu ujawnieniu poufnych informacji bezpośrednio za pośrednictwem aplikacji lub biblioteki, z którą korzysta.

Ponieważ usługa ATS jest domyślnie włączona w aplikacjach utworzonych dla systemów iOS 9 i OS X 10.11 (El Capitan), wszystkie połączenia korzystające z NSUrl Połączenie ion, CFUrl lub NSUrlSession będą objęte wymaganiami dotyczącymi zabezpieczeń usługi ATS. Jeśli połączenia nie spełniają tych wymagań, nie powiedzą się z wyjątkiem.

Aby dowiedzieć się więcej o usłudze ATS, zobacz nasz przewodnik po usłudze App Transport Security .

Wielozadaniowość dla iPadów

W systemie iOS 9 firma Apple dodała obsługę wielozadaniowości na potrzeby uruchamiania dwóch aplikacji w tym samym czasie na określonym sprzęcie iPad. W związku z tym aplikacje platformy Xamarin.iOS nie mogą już zakładać, że są jedyną aplikacją uruchomioną w danym momencie lub mają dostęp do pełnego ekranu lub zasobów urządzenia.

Wielozadaniowość dla tabletu iPad jest obsługiwana za pośrednictwem następujących funkcji:

  • Przesuwanie — umożliwia użytkownikowi tymczasowe uruchamianie drugiej aplikacji systemu iOS w wysuwanym panelu (po prawej lub lewej stronie ekranu na podstawie kierunku języka), który obejmuje około 25% aktualnie uruchomionej aplikacji głównej. Przesuwanie jest dostępne tylko w urządzeniach iPad Pro, iPad Air, iPad Air 2, iPad Mini 2, iPad Mini 3 lub iPad Mini 4.
  • Widok podzielony — na obsługiwanym sprzęcie iPad (tylko iPad Air 2, iPad Mini 4 i iPad Pro) użytkownik może wybrać drugą aplikację i uruchomić ją obok aktualnie uruchomionej aplikacji w trybie podzielonym ekranu. Użytkownik może kontrolować procent ekranu głównego zajmowanego przez każdą aplikację.
  • Obraz na obrazie — w przypadku aplikacji, które odtwarzają zawartość wideo, wideo można teraz odtwarzać w oknie z możliwością przenoszenia i zmiany rozmiaru, które przenosi się na inne aplikacje aktualnie uruchomione na urządzeniu z systemem iOS. Użytkownik ma pełną kontrolę nad rozmiarem i położeniem tego okna. Obraz na obrazie jest dostępny tylko w iPad Pro, iPad Air, iPad Air 2, iPad Mini 2, iPad Mini 3 lub iPad Mini 4.

Aby dowiedzieć się więcej o nowych możliwościach wielozadaniowości systemu iOS 9, zobacz nasz przewodnik multitasking for iPad (Multitasking for iPad guide).

Nowe struktury interfejsu użytkownika kontaktów i kontaktów

Wraz z wprowadzeniem systemu iOS 9 firma Apple wydała dwie nowe struktury, Kontakty i KontaktyUI, które zastępują istniejące struktury interfejsu użytkownika książki adresowej i książki adresowej używane przez system iOS 8 i wcześniejsze.

Te nowe, obiektowe struktury zapewniają następujące elementy:

  • Kontakty — zapewnia dostęp platformy Xamarin.iOS do informacji kontaktowych użytkownika. Ponieważ większość aplikacji wymaga tylko dostępu tylko do odczytu, ta struktura została zoptymalizowana pod kątem bezpiecznego wątkowego dostępu tylko do odczytu.
  • ContactsUI — udostępnia elementy interfejsu użytkownika platformy Xamarin.iOS do wyświetlania, edytowania, wybierania i tworzenia kontaktów na urządzeniach z systemem iOS.

Aby uzyskać więcej informacji, zobacz dokumentację interfejsu użytkownika kontaktów i kontaktów.

Nowe interfejsy API wyszukiwania

Funkcja wyszukiwania została rozszerzona w systemie iOS 9, aby zapewnić doskonałe nowe sposoby uzyskiwania dostępu do informacji wewnątrz aplikacji platformy Xamarin.iOS. Korzystając z nowych interfejsów API wyszukiwania, możesz sprawić, że zawartość aplikacji będzie wyszukiwana za pomocą wyników wyszukiwania Spotlight i Safari, przekazywania i przypomnień Siri oraz sugestii. Dzięki temu użytkownicy mogą szybko uzyskiwać dostęp do działań i informacji znajdujących się głęboko w aplikacji.

Ponadto nowe interfejsy API wyszukiwania ułatwiają integrowanie wyszukiwania w aplikacji bez wcześniejszego środowiska implementacji wyszukiwania. W związku z tym firma Apple twierdzi, że tworzenie zawartości aplikacji dla systemu iOS 9 z możliwością uniwersalnego wyszukiwania przy użyciu funkcji wyszukiwania aplikacji zajmuje kilka godzin.

Aby uzyskać więcej informacji, zobacz dokumentację dotyczącą ulepszeń wyszukiwania.

Nowy widok stosu

Kontrolka Widok stosu (UIStackView ) wykorzystuje możliwości klas automatycznego układu i rozmiaru do zarządzania stosem widoków podrzędnych (poziomo lub pionowo), które dynamicznie reagują na orientację i rozmiar ekranu urządzenia z systemem iOS.

Za pomocą kontrolki Widok stosu ilość pracy wymagana do układu interfejsu użytkownika jest znacznie zmniejszona. Układ wszystkich widoków podrzędnych dołączonych do widoku stosu jest zarządzany automatycznie na podstawie właściwości zdefiniowanych przez dewelopera, takich jak oś, dystrybucja, wyrównanie i odstępy.

Aby uzyskać więcej informacji, zobacz dokumentację Wprowadzenie do widoku stosu.

Zmiany widoku kolekcji

W systemie iOS 9 widok kolekcji (UICollectionView obsługuje teraz przeciąganie zmiany kolejności elementów poza polem przez dodanie nowego domyślnego rozpoznawania gestów i kilku nowych metod pomocniczych).

Korzystając z tych nowych metod, można łatwo zaimplementować przeciąganie do zmiany kolejności w widoku kolekcji i możliwość dostosowywania wyglądu elementów podczas dowolnego etapu procesu zmiany kolejności.

Aby dowiedzieć się więcej na temat zmian widoku kolekcji dla systemu iOS 9, zobacz nasz przewodnik Zmiany widoku kolekcji.

Ulepszenia gier

Dzięki systemowi iOS 9 firma Apple wprowadziła kilka ulepszeń technologicznych interfejsów API gier, które ułatwiają implementowanie grafiki i dźwięku gier w aplikacji Xamarin.iOS. Obejmują one zarówno łatwość programowania dzięki platformom wysokiego poziomu, jak i wykorzystanie możliwości procesora GPU urządzenia z systemem iOS w celu zwiększenia szybkości i możliwości graficznych z ulepszeniami niskiego poziomu.

Obejmuje to programy GameplayKit, ReplayKit, Model I/O, MetalKit i Metal Performance Shaders oraz nowe, ulepszone funkcje systemów Metal, SceneKit i SpriteKit.

Aby uzyskać więcej informacji, zobacz dokumentację dotyczącą ulepszeń gier.

Zmiany struktury HomeKit

Struktura HomeKit, wprowadzona w systemie iOS 8, zapewnia możliwość konfigurowania i kontrolowania różnych akcesoriów z obsługą zestawu HomeKit (takich jak zautomatyzowane światła, blokady drzwi i otwieracze drzwi garażowych) z aplikacji platformy Xamarin.iOS. Oprócz łatwego konfigurowania i konfigurowania akcesoria HomeKit można kontrolować za pomocą mówionych poleceń Siri.

W systemie iOS 9 firma Apple ułatwiła konfigurację, rozszerzyła obsługiwane typy akcesoriów i zapewniała więcej interakcji akcesoriów (takich jak zdalne sterowanie akcesoriami za pośrednictwem usługi iCloud).

Aby uzyskać więcej informacji, zobacz dokumentację Wprowadzenie do zestawu HomeKit i zestawu HomeKit firmy Apple.

Zmiany struktury przekazywania

Przekazywanie (znane również jako ciągłość) zostało wprowadzone przez firmę Apple w systemach iOS 8 i OS X Yosemite (10.10) jako sposób na rozpoczęcie działania na jednym z urządzeń (iOS lub Mac) i kontynuowanie tej samej aktywności na innych urządzeniach (zidentyfikowanych przez konto użytkownika w usłudze iCloud).

Przekazywanie zostało rozszerzone w systemie iOS 9, aby również obsługiwać nowe, ulepszone funkcje wyszukiwania. Aby uzyskać więcej informacji, zobacz dokumentację dotyczącą ulepszeń wyszukiwania. Aby uzyskać więcej informacji na temat korzystania z funkcji Handoff, zobacz dokumentację Wprowadzenie do przekazywania .

Nowe punkty rozszerzenia

W systemie iOS 8 firma Apple wprowadziła rozszerzenia — biblioteki prezentowane przez system operacyjny w standardowych kontekstach, takich jak w Centrum powiadomień, gdy użytkownik żąda klawiatury lub podczas edytowania zdjęcia.

W systemie iOS 9 firma Apple rozszerza obsługę rozszerzeń, zapewniając kilka nowych punktów rozszerzeń , które definiują zasady użycia i zapewniają interfejsy API do pracy w danym obszarze w następujący sposób:

  • Nowy punkt rozszerzenia jednostki audio — użyj tego punktu rozszerzenia, aby zapewnić efekty dźwiękowe, instrumenty muzyczne, generatory dźwięku itp. do użytku w innych aplikacjach hosta jednostki audio (takich jak GarageBand). Ten punkt rozszerzenia umożliwia również sprzedaż jednostek audio (wtyczek audio) w sklepie App Store.
  • Nowy punkt rozszerzenia konserwacji indeksu — ten punkt rozszerzenia umożliwia ponowne indeksowanie danych aplikacji bez konieczności ponownego uruchamiania aplikacji.
  • Nowe punkty rozszerzenia sieci (wymagają one specjalnych uprawnień od firmy Apple):
    • Rozszerzenie dostawcy serwera proxy aplikacji — ten punkt rozszerzenia umożliwia zaimplementowanie niestandardowego przezroczystego serwera proxy sieci po stronie klienta.
    • Filtruj rozszerzenie dostawcy Dostawca danych/filtru — użyj tych punktów rozszerzenia, aby zaimplementować dynamiczne filtrowanie zawartości sieciowej na urządzeniu.
    • Rozszerzenie dostawcy tunelu pakietów — ten punkt rozszerzenia umożliwia zaimplementowanie niestandardowego protokołu tunelowania sieci VPN po stronie klienta.
  • Nowe punkty rozszerzenia Safari:
    • Rozszerzenie blokujące zawartość — użyj tego punktu rozszerzenia, aby zdefiniować listę zablokowanej zawartości, która nie będzie wyświetlana podczas przeglądania internetu przez użytkownika.
    • Rozszerzenie łączy udostępnionych — ten punkt rozszerzenia umożliwia wyświetlanie zawartości aplikacji w udostępnionych linkach przeglądarki Safari.

Aby uzyskać więcej informacji, zobacz dokumentację Wprowadzenie do rozszerzeń i podręcznika programowania rozszerzeń aplikacji firmy Apple.

Ulepszenia łańcucha kluczy

W systemie iOS 9 firma Apple zwiększyła pęk kluczy, aby zapewnić nowy typ klucza szyfrowania dla bezpiecznej enklawy i więcej opcji ochrony elementów w następujący sposób:

  • Nowe ograniczenie touch ID, które unieważnia elementy pęku kluczy po zmodyfikowaniu bazy danych odcisków palców.
  • Nowe ograniczenia, które umożliwiają tworzenie wpisów listy kontroli dostępu tylko za pomocą funkcji Touch ID lub kodu dostępu.
  • Nowy kontekst uwierzytelniania, który umożliwia wywoływanie uwierzytelniania niezależnie od SecItem wywołań.
  • Entropia listy kontroli dostępu (przy użyciu opcji Hasło aplikacji) dla szyfrowania elementu pęku kluczy udostępnianych przez aplikację.
  • Obsługa generowania i używania kluczy wewnątrz bezpiecznej enklawy (za pośrednictwem atrybutu kSecAttrTokenIDSecureEnclave ).

Aby uzyskać więcej informacji, zobacz Touch ID i Face ID w środowisku Xamarin.iOS.

Obsługa języka od prawej do lewej

W systemie iOS 9 firma Apple ułatwiła prezentowanie odwróconego interfejsu użytkownika niż kiedykolwiek, zapewniając pełną obsługę języków od prawej do lewej. Do takich właściwości należą:

  • Standardowe kontrolki UIKit automatycznie przerzucają od prawej do lewej na podstawie ustawień regionalnych i ustawień językowych urządzeń z systemem iOS.
  • Klasa UIView udostępnia atrybuty, które umożliwiają zdefiniowanie sposobu wyświetlania danego widoku po przerzuceniu od prawej do lewej.
  • Możliwość programowego przerzucania obrazu przy użyciu właściwości FlipsForRightToLeftLayoutDirection klasy UIImage.

Aby uzyskać więcej informacji, zobacz dokumentację obsługującą języki od prawej do lewej firmy Apple.

Dodatkowe zmiany struktury

Oprócz istotnych zmian omówionych powyżej firma Apple wprowadziła modyfikacje i ulepszenia kilku istniejących struktur dla systemu iOS 9, w tym następujące:

  • AV Foundation Framework
  • AVKit Framework
  • CloudKit Framework
  • Foundation Framework
  • Struktura przekazywania
  • HealthKit Framework
  • Struktura HomeKit
  • Lokalna struktura uwierzytelniania
  • MapKit Framework
  • PassKit Framework
  • Struktura usług Safari
  • UIKit Framework

Aby uzyskać więcej informacji, zobacz naszą dokumentację Dotyczącą dodatkowych zmian struktury systemu iOS 9.

Przestarzałe interfejsy API i funkcje

Firma Apple wycofała następujące interfejsy API i funkcje w systemie iOS 9:

  • Interfejs użytkownika książki adresowej i książki adresowej — te interfejsy API zostały zastąpione przez struktury interfejsu użytkownika Kontakt i Kontakt. Aby uzyskać więcej informacji, zobacz dokumentację interfejsu użytkownika kontaktów i kontaktów.
  • CBCentralManagerRetrievePeripherals metody CBCentralManager i RetrieveConnectedPeripherals klasy zostały usunięte w systemie iOS 9. Wywołanie tych metod spowoduje awarię aplikacji podczas parowania metody dostępu lub podczas uruchamiania aplikacji.
  • FetchAllChanges — klasa FetchAllChangesCKFetchRecordChangesOperation została wycofana i zostanie usunięta w systemie iOS 9.
  • Odtwarzacz multimedialny — platforma Odtwarzacz multimedialny została uznana za przestarzałą w systemie iOS 9. Zamiast tego użyj interfejsów API AVKit lub AV Foundation.

Aby uzyskać pełną listę konkretnych wycofań interfejsu API, zobacz dokumentację interfejsu API systemu iOS 9.0 firmy Apple.