Ú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.
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 k HomeKitu a HomeKitu 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řídyRetrieveConnectedPeripherals
CBCentralManager
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
FetchAllChanges
CKFetchRecordChangesOperation
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.
Související odkazy
- Úvod do 3D Touch
- Zabezpečení přenosu aplikací
- Multitasking pro iPad
- Kontakty a uživatelské rozhraní kontaktů
- Nová rozhraní API vyhledávání
- Úvod do zobrazení zásobníku
- Změny zobrazení kolekce
- Vylepšení her
- Úvod do HomeKitu
- Úvod do předání
- Další změny v architektuře iOSu 9
- Řešení potíží
- Novinky v iOSu 9.0
- Aktualizace aplikací Xamarin.iOS na iOS9 (video)