Úvod do iOSu 9

Tento článek představuje všechna nová a upravená rozhraní API a funkce dostupné v iOSu 9 pro vývojáře v Xamarin.iOS.

The iOS 9 logo

Apple přidal v iOS 9 několik nových rozhraní API a služeb spolu s mnoha vylepšeními stávajících funkcí.

3D Touch

Novinka v iOSu 9 a i Telefon 6s a i Telefon 6s Plus, 3D Touch přidává do aplikací pro iOS citlivá na tlaková gesta. Díky 3D Touch je teď aplikace i Telefon schopná nejen říct, že se uživatel dotkne obrazovky zařízení, může také zjistit, kolik tlaku uživatel vyvíjí a reaguje na různé úrovně tlaku.

3D Touch poskytuje vaší aplikaci následující funkce:

  • Citlivost tlaku – Aplikace teď můžou měřit, jak tvrdě nebo světlo uživatel dotkne obrazovky, a využívat tyto informace. Například aplikace pro malování může ztužovat nebo ztužovat čáru na základě toho, jak těžké je, že se uživatel dotkne obrazovky.
  • Náhled a Pop – Aplikace teď může uživateli umožnit interakci s jeho daty, aniž by musel přejít z aktuálního kontextu. Stisknutím pevného tlačítka na obrazovce si můžou prohlédnout položku, kterou mají zájem (například zobrazit náhled zprávy). Když stisknete těžší, můžou se do položky vysunutím otevřít.
  • Rychlé akce – můžete si představit rychlé akce , jako jsou kontextové nabídky, které se dají rozbalit, když uživatel klikne pravým tlačítkem myši na položku v desktopové aplikaci. Pomocí rychlých akcí můžete přidat běžné, rychlé a snadné přístupové zkratky k funkcím v aplikaci z ikony domovské obrazovky na zařízení s iOSem.

Další informace najdete v našem průvodci úvodem k 3D dotykovému ovládání .

Zabezpečení přenosu aplikací

Novinka v systému iOS 9, App Transport Security (ATS) vynucuje zabezpečená připojení mezi internetovými prostředky (například back-endovým serverem aplikace) a vaší aplikací. ATS zajišťuje, aby veškerá internetová komunikace odpovídala osvědčeným postupům zabezpečeného připojení, a tím zabránila náhodnému zveřejnění citlivých informací přímo prostřednictvím vaší aplikace nebo knihovny, kterou využívá.

Vzhledem k tomu, že ats je ve výchozím nastavení povolená v aplikacích vytvořených pro iOS 9 a OS X 10.11 (El Capitan), všechna připojení využívající NSUrl Připojení ion, CFUrl nebo NSUrlSession budou podléhat požadavkům na zabezpečení ATS. Pokud vaše připojení nesplňují tento požadavek, dojde k selhání s výjimkou.

Další informace o ATS najdete v našem průvodci službou App Transport Security .

Multitasking pro iPad

S iOSem 9 přidal Apple podporu multitaskingu pro spouštění dvou aplikací současně na konkrétním hardwaru iPadu. Vaše aplikace Xamarin.iOS proto už nemůžou předpokládat, že jsou jedinou spuštěnou aplikací v daném okamžiku nebo že mají přístup k celé obrazovce nebo prostředkům zařízení.

Multitasking pro iPad se podporuje prostřednictvím následujících funkcí:

  • Posunutí – Umožňuje uživateli dočasně spustit druhou aplikaci pro iOS na panelu vysunutí (buď na pravé nebo levé straně obrazovky na základě směru jazyka), která pokrývá přibližně 25 % aktuálně spuštěné hlavní aplikace. Snímek je dostupný jenom na iPadu Pro, iPadu Air, iPadu Air 2, iPadu Mini 2, iPadu Mini 3 nebo iPadu Mini 4.
  • Rozdělené zobrazení – na podporovaném hardwaru iPadu (jenom iPad Air 2, iPad Mini 4 a iPad Pro) může uživatel vybrat druhou aplikaci a spustit ji vedle aktuálně spuštěné aplikace v režimu rozdělené obrazovky. Uživatel může řídit procento hlavní obrazovky, kterou každá aplikace zabírá.
  • Obrázek v obrázku – U aplikací, které přehrávají videoobsáh, se teď dá přehrát v pohybovatelném okně, které se dá přecházet přes ostatní aplikace, které jsou aktuálně spuštěné na zařízení s iOSem. Uživatel má plnou kontrolu nad velikostí a umístěním tohoto okna. Obrázek v obrázku je dostupný jenom na iPadu Pro, iPadu Air, iPadu Air 2, iPadu Mini 2, iPadu Mini 3 nebo iPadu Mini 4.

Další informace o nových schopnostech multitaskingu v iOSu 9 najdete v našem průvodci multitaskingem pro iPad .

Nové architektury uživatelského rozhraní kontaktů a kontaktů

S úvodem iOS 9 společnost Apple vydala dvě nové architektury, Kontakty a ContactsUI, které nahrazují stávající architektury adresáře a uživatelského rozhraní adresáře používané iOSem 8 a předchozím.

Tyto nové objektově orientované architektury poskytují následující:

  • Kontakty – Poskytuje přístup Xamarin.iOS k kontaktním informacím uživatele. Vzhledem k tomu, že většina aplikací vyžaduje přístup jen pro čtení, je tato architektura optimalizovaná pro přístup jen pro přístup jen pro čtení.
  • ContactsUI – Poskytuje prvky uživatelského rozhraní Xamarin.iOS pro zobrazení, úpravy, výběr a vytváření kontaktů na zařízeních s iOSem.

Další informace najdete v dokumentaci k uživatelskému rozhraní Kontakty a Kontakty.

Nová rozhraní API vyhledávání

Vyhledávání bylo v iOSu 9 rozšířeno, aby poskytovalo skvělé nové způsoby přístupu k informacím v aplikaci Xamarin.iOS. Pomocí nových rozhraní API pro vyhledávání můžete nastavit, aby obsah vaší aplikace byl prohledávatelný prostřednictvím výsledků hledání Spotlight a Safari, předání a připomenutí a návrhů Siri. To umožňuje uživatelům rychlý přístup k aktivitám a informacím přímo ve vaší aplikaci.

Kromě toho nová rozhraní API vyhledávání usnadňují integraci vyhledávání do vaší aplikace bez předchozího prostředí implementace vyhledávání. Z tohoto důvodu Společnost Apple tvrdí, že obvykle trvá několik hodin, než bude obsah aplikace pro iOS 9 všeobecně prohledávatelný pomocí vyhledávání aplikací.

Další informace najdete v naší dokumentaci k vylepšením vyhledávání.

Nové zobrazení zásobníku

Ovládací prvek Stack View (UIStackView využívá výkon tříd automatického rozložení a velikostí ke správě zásobníku dílčích zobrazení (vodorovně nebo svisle), které dynamicky reaguje na orientaci zařízení s iOSem a velikost obrazovky.

Při použití ovládacího prvku Zobrazení zásobníku se množství práce potřebné k rozložení uživatelského rozhraní výrazně sníží. Rozložení všech dílčích zobrazení připojených k zobrazení zásobníku se spravuje automaticky na základě vlastností definovaných vývojářem, jako jsou osa, distribuce, zarovnání a mezery.

Další informace najdete v naší dokumentaci úvodu ke službě Stack View .

Změny zobrazení kolekce

V iOSu 9 teď zobrazení kolekce (UICollectionView nyní podporuje přeuspořádání položek mimo pole přidáním nového výchozího rozpoznávání gest a několika nových podpůrných metod.

Pomocí těchto nových metod můžete snadno implementovat změny pořadí přetažením do pořadí v zobrazení kolekce a mít možnost přizpůsobit vzhled položek během libovolné fáze procesu změny pořadí.

Další informace o změnách zobrazení kolekce pro iOS 9 najdete v průvodci změnami zobrazení kolekce.

Vylepšení her

S iOSem 9 společnost Apple provedla několik technologických vylepšení rozhraní API pro hry, která usnadňují implementaci herní grafiky a zvuku v aplikaci Xamarin.iOS. Patří mezi ně snadné vývoje prostřednictvím architektur vysoké úrovně a využití výkonu GPU zařízení s iOSem pro lepší rychlost a grafické schopnosti s vylepšeními nízké úrovně.

To zahrnuje HerníKit, ReplayKit, Model I/O, MetalKit a Metal Performance Shadery spolu s novými, vylepšenými funkcemi Metal, SceneKit a SpriteKit.

Další informace najdete v naší dokumentaci k vylepšením her.

Změny architektury HomeKit

Architektura HomeKit , představená v iOSu 8, poskytuje možnost nastavit a řídit různé příslušenství s podporou HomeKitu (například automatizované osvětlení, zámky dveří a otvírače garážových dveří) z aplikace Xamarin.iOS. Kromě snadného nastavení a konfigurace lze příslušenství HomeKit ovládat pomocí mluvených příkazů Siri.

V iOSu 9 společnost Apple usnadnila nastavení, rozšířila typy příslušenství podporovaných a poskytovala další interakce příslušenství (například ovládání příslušenství vzdáleně přes iCloud).

Další informace najdete v naší dokumentaci Úvod do HomeKitu, HomeKitIntro iOS Sample App a HomeKit společnosti Apple.

Změny architektury předání

Předání (označované také jako kontinuita) zavedl Apple v systémech iOS 8 a OS X Yosemite (10.10) jako způsob, jak uživatel zahájit aktivitu na jednom ze svých zařízení (iOS nebo Mac) a pokračovat ve stejné aktivitě na jiných zařízeních (jak je identifikováno účtem iCloud uživatele).

Předání bylo rozšířeno v iOSu 9, aby podporovalo také nové rozšířené možnosti vyhledávání. Další informace najdete v naší dokumentaci k vylepšením vyhledávání. Další informace o používání handoffu najdete v naší dokumentaci úvodu k handoffu .

Nové rozšiřovací body

V iOSu 8 společnost Apple zavedla rozšíření – knihovny, které operační systém prezentuje ve standardních kontextech, například v Centru oznámení, když uživatel požádá o klávesnici nebo když upravuje fotku.

S iOSem 9 rozšiřuje Apple podporu rozšíření tím, že poskytuje několik nových bodů rozšíření, které definují zásady použití a poskytují rozhraní API pro práci v dané oblasti následujícím způsobem:

  • Nový bod rozšíření zvukové jednotky – Tento bod rozšíření slouží k poskytování zvukových efektů, hudebních nástrojů, zvukových generátorů atd. pro použití v jiných hostitelských aplikacích audio unit (například GarageBand). Tento bod rozšíření také umožňuje prodávat zvukové jednotky (zvukové moduly plug-in) v App Storu.
  • Nový bod rozšíření údržby indexů – Pomocí tohoto bodu rozšíření můžete podporovat přeindexování dat aplikace bez nutnosti opětovného spuštění aplikace.
  • Nové body rozšíření sítě (vyžadují zvláštní oprávnění od společnosti Apple):
    • Rozšíření zprostředkovatele proxy aplikací – Tento bod rozšíření použijte k implementaci vlastního transparentního síťového proxy serveru na straně klienta.
    • Filtrování Zprostředkovatel dat / rozšíření zprostředkovatele ovládacího prvku filtru – Pomocí těchto bodů rozšíření implementujte dynamické filtrování obsahu sítě na zařízení.
    • Rozšíření zprostředkovatele tunelového propojení paketů – Tento bod rozšíření použijte k implementaci vlastního protokolu tunelového propojení VPN na straně klienta.
  • Nové body rozšíření Safari:
    • Rozšíření blokování obsahu – Pomocí tohoto bodu rozšíření definujte seznam blokovaného obsahu, který se nezobrazí při procházení webu uživatelem.
    • Rozšíření pro sdílené odkazy – Pomocí tohoto bodu rozšíření můžete povolit zobrazení obsahu vaší aplikace ve sdílených odkazech Safari.

Další informace najdete v naší dokumentaci úvodu k rozšířením a průvodci programováním rozšíření aplikací společnosti Apple.

Vylepšení řetězce klíčů

V iOSu 9 společnost Apple vylepšila klíčenku tak, aby poskytovala nový typ šifrovacího klíče pro zabezpečenou enklávu a další možnosti ochrany položek následujícím způsobem:

  • Nové omezení Touch ID, které při úpravě databáze otisků prstů zruší platnost položek řetězce klíčů.
  • Nová omezení, která umožňují vytvářet položky seznamu řízení přístupu jenom pomocí Touch ID nebo hesla
  • Nový kontext ověřování, který umožňuje vyvolat ověřování odděleně od SecItem volání.
  • Entropie seznamu řízení přístupu (pomocí možnosti Heslo aplikace) pro šifrování položek řetězce klíčů poskytnuté aplikací.
  • Podpora generování a používání klíčů uvnitř zabezpečené enklávy (prostřednictvím atributu kSecAttrTokenIDSecureEnclave ).

Další informace najdete v tématu Touch ID a Face ID v Xamarin.iOS.

Podpora jazyků se zprava doleva

V iOSu 9 společnost Apple usnadnila prezentaci převráceného uživatelského rozhraní tím, že poskytuje plnou podporu jazyků se zprava doleva. To zahrnuje následující:

  • Standardní ovládací prvky UIKit se automaticky překlopí zprava doleva na základě národního prostředí zařízení s iOSem a nastavení jazyka.
  • UiView třída poskytuje atributy, které umožňují definovat, jak se má dané zobrazení objevit při překlopení zprava doleva.
  • Schopnost překlopit obrázek programově pomocí FlipsForRightToLeftLayoutDirection vlastnost UIImage třídy.

Další informace najdete v dokumentaci k podpůrným jazykům se zprava doleva od společnosti Apple.

Další změny architektury

Kromě hlavních změn, které jsme probrali výše, apple provedl změny a vylepšení několika stávajících architektur pro iOS 9, včetně následujících:

  • AV Foundation Framework
  • AVKit Framework
  • CloudKit Framework
  • Foundation Framework
  • Handoff Framework
  • HealthKit Framework
  • HomeKit Framework
  • Architektura místního ověřování
  • MapKit Framework
  • Architektura PassKit
  • Architektura služeb Safari
  • UIKit Framework

Další informace najdete v naší dokumentaci ke změnám architektury pro iOS 9.

Zastaralá rozhraní API a funkce

Apple v iOSu 9 přestal používat následující rozhraní API a funkce:

  • Uživatelské rozhraní adresáře a adresáře – tato rozhraní API byla nahrazena architekturami kontaktního a kontaktního uživatelského rozhraní. Další informace najdete v dokumentaci k uživatelskému rozhraní Kontakty a Kontakty.
  • CBCentralManager - Metody RetrievePeripherals třídy RetrieveConnectedPeripheralsCBCentralManager byly odebrány v iOS 9. Volání těchto metod způsobí chybové ukončení aplikace při párování přístupového objektu nebo při spuštění aplikace.
  • FetchAllChanges – Třída FetchAllChangesCKFetchRecordChangesOperation byla vyřazena a bude odebrána v iOSu 9.
  • Přehrávač médií – architektura Přehrávač médií je v iOSu 9 zastaralá. Místo toho použijte rozhraní AVKit nebo AV Foundation API.

Úplný seznam konkrétních vyřazení rozhraní API najdete v dokumentaci k rozhraní API pro iOS 9.0 společnosti Apple.

Ukázkové aplikace pro iOS 9

Máme několik ukázek specifických pro iOS 9, které vám pomůžou začít:

Podívejte se také na části těchto ukázek pro iOS (připravujeme doprovodné verze Mac OS X):