Ú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 Xamarin.iOS.

The iOS 9 logo

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

3D Touch

Novinka v iOSu 9 a iPhone 6s a iPhone 6s Plus, 3D Touch přidává do aplikací pro iOS citlivá na tlaková gesta. Díky 3D Dotykovému ovládání je teď aplikace iPhone schopná nejen zjistit, že se uživatel dotkne obrazovky zařízení, může také pochopit, 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 pevně nebo světlo uživatel stiská obrazovku a využívá tyto informace. Aplikace pro malování může například ztěžovat nebo ztěžovat čáru na základě toho, jak tvrdě se uživatel dotkne obrazovky.
  • Náhled a pop – Vaše 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 se můžou podívat na položku, kterou mají zájem (například zobrazit náhled zprávy). Když stisknete obtížnější, můžou se do položky připojit .
  • Rychlé akce – Zamyslete se nad rychlými akcemi, 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í

Nové pro 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í, čímž brání 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 je ATS ve výchozím nastavení povolená v aplikacích vytvořených pro iOS 9 a OS X 10.11 (El Capitan), budou všechna připojení využívající NSUrlConnection, CFUrl nebo NSUrlSession podléhat požadavkům na zabezpečení ATS. Pokud vaše připojení nesplňují tento požadavek, nezdaří se s výjimkou.

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

Multitasking pro iPad

S iOSem 9 společnost Apple přidala podporu multitaskingu pro spouštění dvou aplikací současně na konkrétním hardwaru iPad. V důsledku toho vaše aplikace Xamarin.iOS 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í:

  • Snímek přes – Umožňuje uživateli dočasně spustit druhou aplikaci pro iOS na panelu pro odsunutí (buď na pravé nebo levé straně obrazovky podle směru jazyka), která pokrývá přibližně 25 % aktuálně spuštěné hlavní aplikace. Snímek je k dispozici pouze na iPad Pro, iPad Air, iPad Air 2, iPad Mini 2, iPad Mini 3 nebo iPad Mini 4.
  • Rozdělené zobrazení – Na podporovaném hardwaru iPad (iPad Air 2, jenom iPad Mini 4 a iPad Pro), uživatel může vybrat druhou aplikaci a spustit ji vedle sebe s aktuálně spuštěnou aplikací 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í obsah videa, se teď video dá přehrát v přesouvání a změně velikosti okna, které se nachází na ostatních aplikacích, 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 k dispozici pouze na iPad Pro, iPad Air, iPad Air 2, iPad Mini 2, iPad Mini 3 nebo iPad Mini 4.

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

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

S zavedením iOS 9 společnost Apple vydala dvě nové architektury , kontakty a kontaktyUI, 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 bezpečný 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 naší dokumentaci k kontaktům a uživatelskému rozhraní kontaktů .

Nová rozhraní API vyhledávání

Vyhledávání bylo rozšířeno v iOSu 9, 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 obsah vaší aplikace prohledávat prostřednictvím výsledků hledání Spotlight a Safari, připomenutí a návrhy Siri. To umožňuje uživatelům rychlý přístup k aktivitám a informacím v rámci vaší aplikace.

Nová rozhraní API vyhledávání navíc usnadňují integraci vyhledávání do 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í služby App Search.

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

Nové zobrazení zásobníku

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

Pomocí ovládacího prvku Zobrazení zásobníku se výrazně sníží množství práce potřebné k rozložení uživatelského rozhraní. 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 osy, distribuce, zarovnání a mezery.

Další informace najdete v naší dokumentaci úvodu k zobrazení zásobníku .

Změny zobrazení kolekce

V iOSu 9 teď zobrazení kolekce (UICollectionView teď 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ěchtonovýchch služeb můžete snadno implementovat přetažení 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 našem průvodci změnami zobrazení kolekce .

Vylepšení her

S iOS 9 apple provedl 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ývoj 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 Funkce GameplayKit, ReplayKit, Model I/O, MetalKit a Metal Performance Shaders 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 zavedená v iOSu 8 poskytuje možnost nastavit a řídit různé doplňky s podporou HomeKitu (jako jsou automatizované světla, zámky dveří a otvírače garážových dveří) z aplikace Xamarin.iOS. Kromě snadného nastavení a konfigurace je možné příslušenství HomeKit ovládat pomocí mluvených příkazů Siri.

V iOSu 9 apple usnadnil nastavení, rozšířil typy doplňků podporovaných a poskytoval více interakcí 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 pro 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 iOSu 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 v této stejné aktivitě na jiném ze svých zařízení (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í Handoff najdete v naší dokumentaci úvodu k handoffu .

Nové rozšiřovací body

V iOS 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) na App Store.
  • Nový bod rozšíření údržby indexu – 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í – Použijte tento bod rozšíření 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í poskytovatele paketů Tunnel – Tento bod rozšíření slouží k implementaci vlastního tunelového protokolu VPN na straně klienta.
  • Nové body rozšíření Safari:
    • Rozšíření blokování obsahu – Tento bod rozšíření slouží k definování seznamu blokovaného obsahu, který se nezobrazí při procházení webu uživatelem.
    • Rozšíření Sdílené odkazy – Pomocí tohoto bodu rozšíření můžete povolit prohlížení obsahu vaší aplikace ve sdílených odkazech Safari.

Další informace najdete v naší dokumentaci 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íčence tak, aby poskytovala nový typ šifrovacího klíče pro zabezpečené enklávy 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ů zneplatňuje položky řetězce klíčů.
  • Nová omezení, která umožňují vytvářet položky seznamu Access Control jenom pomocí Touch ID nebo hesla.
  • Nový kontext ověřování, který umožňuje vyvolat ověřování oddělené od SecItem volání.
  • Access Control Výpis entropie (pomocí možnosti Heslo aplikace) pro šifrování položek klíčenky 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 jazyka zprava doleva

V iOSu 9 apple usnadnil prezentaci převráceného uživatelského rozhraní, než kdy dřív, tím, že poskytuje plnou podporu jazyků zprava doleva. Ta zahrnují následující:

  • Standardní ovládací prvky UIKit automaticky překlopí zprava doleva na základě národního prostředí a jazyka zařízení s iOSem.
  • Třída UIView poskytuje atributy, které umožňují definovat, jak se má dané zobrazení zobrazovat 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
  • Rozhraní 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 vyřadil následující rozhraní API a funkce v iOSu 9:

  • Adresáře & Uživatelské rozhraní adresáře – Tato rozhraní API byla nahrazena architekturami kontaktního a kontaktního uživatelského rozhraní. Další informace najdete v naší dokumentaci k uživatelskému rozhraní Kontakty a kontakty .
  • CBCentralManager - Metody RetrievePeripheralsRetrieveConnectedPeripheralsCBCentralManager třídy byly odebrány v iOS 9. Voláním těchto metod dojde k chybovému 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):