Úvod do iOSu 8

S iOSem 8 poskytuje Apple celou řadu nových architektur a rozhraní API pro vzrušující a radost vývojářům. V této příručce představíme tato nová rozhraní API a podíváme se, jak může iOS 8 využívat výhody pro vývojáře i uživatele.

iOS 7 vizuálně změnil celé uživatelské rozhraní iOS od toho, co uživatelé a vývojáři očekávali, přímo od prvního operačního systému i Telefon. IOS 8 to pokračuje tím, že poskytuje mnoho architektur pro vývojáře, což uživatelům umožňuje řídit téměř každý aspekt svého života přímo z jejich i Telefon. Například health and fitness can be analyzed with HealthKit, passcodes are obsolescent with biometric authentication using LocalAuthentication, App extensions open up a communication channel between 3rd party apps, and HomeKit allows to turn your house to a HomeKit to the Home of the Future.

Pokud byl iOS 7 o potěšení uživatelů, iOS 8 se zaměřuje na radost vývojářů s celou řadou těchto chutných nových nástrojů.

Tato příručka představuje nová rozhraní API pro vývojáře Xamarin.iOS.

V iOSu 8 jsou také zastaralá rozhraní API, která jsou podrobně popsána na konci tohoto dokumentu.

Požadavky

K vytvoření aplikací pro iOS 8 v Visual Studio pro Mac jsou potřeba následující:

  • Xcode 7 a iOS 8 nebo novější – na počítači vývojáře je potřeba nainstalovat a nakonfigurovat nejnovější rozhraní API Xcode a iOS od Společnosti Apple.
  • Visual Studio pro Mac – Na uživatelském zařízení by se měla nainstalovat a nakonfigurovat nejnovější verze Visual Studio pro Mac.
  • Zařízení nebo simulátor iOS 8 – zařízení s iOSem, na kterém běží nejnovější verze iOS 8 pro testování.

Domů a volný čas

iOS 8 pomohl pevně zasítit Apple a zařízení s iOSem přímo do srdce vašeho domova prostřednictvím HomeKitu a HealthKitu. V této části se podíváme na to, jak tyto nové architektury fungují a jak je lze integrovat do aplikace Xamarin.iOS.

HomeKit

Ovládání zařízení z i Telefon není novou aplikací technologií. Mnoho produktů připojených domů je možné ovládat prostřednictvím aplikace pro iOS. HomeKit teď ale tento krok dále provede propagací společného protokolu pro zařízení domácí automatizace a zpřístupněním veřejného rozhraní API určitým výrobcům, jako jsou iHome, Philips a Honeywell. Pro uživatele to znamená, že může řídit téměř všechny aspekty svého domu bezproblémově z jedné aplikace. Je pro ně irelevantní vědět, že používají žárovku Philips Hue nebo vnořený alarm. Uživatelé mohou také zřetězovat řadu inteligentních domácích procesů do "Scén".

S HomeKitem můžou aplikace třetích stran a Siri objevovat příslušenství a přidávat je do své osobní domácí konfigurační databáze, upravovat a reagovat na tato data a komunikovat s příslušenstvím a jejich službami, aby provedly akci.

Konfigurace

Následující diagram znázorňuje základní hierarchii konfigurace příslušenství HomeKit:

This diagram shows the basic hierarchy of the configuration of HomeKit accessories

Aby mohli vývojáři začít s HomeKitem, musí se ujistit, že je ve svém zřizovacím profilu vybraná služba HomeKit. Apple také poskytuje vývojářům doplněk simulátoru HomeKit pro Xcode. Najdete ho v Centru pro vývojáře Apple v části Hardware IO Tools for Xcode.

Další informace najdete v našem průvodci HomeKitem .

HealthKit

HealthKit je architektura představená v iOSu 8, která poskytuje centralizované, koordinované a zabezpečené úložiště dat pro informace související se stavem. Operační systém zajišťuje ochranu osobních údajů a zabezpečení informací o stavu a pomocí aplikace Health (Stav) řídicí panel pro uživatele. S oprávněním uživatele můžou aplikace číst a zapisovat širokou škálu informací o stavu.

Další informace o použití v aplikaci Xamarin.iOS najdete v příručce Úvod do HealthKitu .

Rozšíření funkcí i Telefon

Díky iOSu8 mají vývojáři mnohem větší kontrolu nad tím, kdo může aplikaci používat, a lepší možnosti pro větší otevřenou komunikaci mezi aplikacemi třetích stran. Funkce, jako jsou rozšíření aplikací a výběr dokumentů, otevírají svět možností, jak se dají aplikace používat v ekosystému Společnosti Apple.

Rozšíření aplikací

Rozšíření aplikací, která se mají přesměrovat, představují způsob, jak mezi sebou komunikovat aplikace třetích stran. Kvůli zachování vysokých standardů zabezpečení a zachování integrity aplikací v izolovaném prostoru (sandbox) se tato komunikace neprovádí přímo mezi aplikacemi. Místo toho se provádí rozšířením uprostřed.

Prvním krokem při vytváření rozšíření aplikace je definování správného bodu rozšíření – to je důležité při zajištění chování a dostupnosti správných rozhraní API. Pokud chcete vytvořit rozšíření aplikace v Visual Studio pro Mac, přidejte ho do existující aplikace přidáním nového projektu do řešení.

V dialogovém okně Nový projekt přejděte na rozšíření sjednoceného rozhraní API> C#>iOS>, jak je znázorněno na následujícím snímku obrazovky:

Creating a new extension

Dialogové okno Nový projekt obsahuje sedm nových šablon projektů pro vytváření rozšíření aplikací a jsou popsány níže. Všimněte si, že řada rozšíření souvisí s dalšími novými rozhraními API v iOSu, jako je například výběr dokumentu:

  • Akce – To umožňuje vývojářům vytvářet jedinečná vlastní tlačítka akcí, která uživatelům umožňují provádět určité úlohy.
  • Vlastní klávesnice – To umožňuje vývojářům přidávat do řady integrovaných klávesnic Apple přidáním vlastní klávesnice. Populární klávesnice, Swype to používá k přenesení klávesnice do iOS.
  • Výběr dokumentu – Obsahuje kontroler zobrazení pro výběr dokumentu, který umožňuje uživatelům přistupovat k souborům mimo sandbox aplikace.
  • Zprostředkovatel souborů pro výběr dokumentu – Poskytuje zabezpečené úložiště pro soubory pomocí nástroje pro výběr dokumentu.
  • Úpravy fotek – To rozšiřuje filtry a nástroje pro úpravy, které už apple poskytuje v aplikaci Fotky, aby uživatelé měli větší kontrolu a více možností při úpravách svých fotek.
  • Dnes – To dává aplikacím možnost zobrazovat widgety v části Dnes v Centru oznámení.

Další informace o používání rozšíření aplikací v Xamarinu najdete v průvodci úvodem k rozšířením aplikací.

Touch ID

Touch ID bylo zavedeno v iOSu 7 jako způsob ověřování uživatele – podobně jako heslo. Bylo však omezeno na odemknutí zařízení pomocí App Storu, pomocí iTunes a ověřování pouze klíčenky iCloudu.

V aplikacích s iOSem 8 teď můžete používat Touch ID jako ověřovací mechanismus pomocí místního rozhraní API pro ověřování. V současné době není možné k vzdálenému ověření použít místní ověřování.

Za prvé, pomáhá stávajícím službám řetězce klíčů prostřednictvím nových seznamů řízení přístupu ke klíčence (ACL). Data řetězce klíčů je možné odemknout úspěšným ověřováním otisku prstu uživatele.

Za druhé localAuthentication poskytuje dvě metody pro místní ověření vaší aplikace. Vývojáři by měli použít CanEvaluatePolicy k určení, jestli zařízení dokáže přijmout Touch ID, a pak EvaluatePolicy spustit operaci ověřování.

Další informace o Touch ID a informace o tom, jak ji integrovat do aplikace Xamarin.iOS, najdete v průvodcích Xamarin.iOS v touch ID a Face ID.

Výběr dokumentu

Výběr dokumentu funguje s jednotkou iCloud uživatelů, aby mohl uživatel otevírat soubory vytvořené v jiné aplikaci, importovat je a manipulovat s nimi a exportovat je znovu. To vytvoří intuitivní pracovní postup, a proto mnohem lepší prostředí pro uživatele. Synchronizace iCloudu tento krok dále provede – všechny změny provedené v jedné aplikaci se také budou konzistentně odrážet na všech vašich zařízeních.

Podrobnější informace o nástroji pro výběr dokumentů a informace o tom, jak ho integrovat do aplikace Xamarin.iOS, najdete v příručce Úvod k výběru dokumentů.

Předání

Předání, které je součástí větší funkce kontinuity, je krokem dále k integraci OS X a iOS. Patří sem multiplatformní AirDrop, schopnost přijímat hovory i Telefon, SMS na iPadu a Mac a vylepšení v tetheringu z vašeho i Telefon.

Handoff funguje s iOS 8 a Yosemite a vyžaduje, aby byl účet iCloud přihlášený ke všem různým zařízením, která chcete použít. Měla by fungovat s většinou předinstalovaných aplikací Apple, včetně Safari, iWork, Mapy, Kalendářů a kontaktů.

Další informace najdete v našem průvodci předáním .

Sjednocené scénáře

iOS 8 obsahuje nový jednodušší způsob použití pro vytvoření uživatelského rozhraní – sjednocené scénáře. S jedním scénářem, který pokrývá všechny různé velikosti hardwarových obrazovek, je možné rychle a responzivní zobrazení vytvořit ve skutečném stylu "návrhu jednou, použijte mnoho".

Před iOSem8 se vývojáři použili UIInterfaceOrientation k rozlišení mezi režimy na výšku a na šířku a UIInterfaceIdiom rozlišovali mezi zařízeními s iOSem. V iOS8 už není nutné vytvářet samostatné scénáře pro zařízení s i Telefon a iPadem – orientace a zařízení se určují pomocí tříd velikostí.

Každé zařízení je definováno třídou velikostí ve svislé i vodorovné ose a v iOSu 8 existují dva typy tříd velikostí:

  • Normální – jedná se o velkou velikost obrazovky (například iPad) nebo miniaplikaci, která zobrazuje dojem velké velikosti (například UIScrollView).
  • Kompaktní - to je pro menší zařízení (například i Telefon). Tato velikost bere v úvahu orientaci zařízení.

Pokud jsou tyto dva koncepty použity společně, výsledkem je mřížka 2 x 2, která definuje různé možné velikosti, které lze použít v obou rozdílných orientacích, jak je vidět v následujícím diagramu:

A diagram representing the 2 x 2 grid that defines the different possible sizes that can be used in both the differing orientations

Další informace o třídách velikostí najdete v tématu Úvod do sjednocených scénářů.

Foto kit

Photo Kit je nová architektura, která umožňuje aplikacím dotazovat systémovou knihovnu imagí a vytvářet vlastní uživatelská rozhraní pro zobrazení a úpravu jeho obsahu. Zahrnuje řadu tříd, které představují obrazové a video assety, a také kolekce prostředků, jako jsou alba a složky.

Další informace najdete v našem průvodci PhotoKitem .

Hry

Sada scén

Sada scén je rozhraní API pro graf 3D scény, které zjednodušuje práci s 3D grafikou. Poprvé byla představena v OS X 10.8 a nyní přišla na iOS 8. Díky sadě Scene Kit vytvářející imerzivní 3D vizualizace a neformální 3D hry nevyžadují odborné znalosti v OpenGL. Sada Scene Kit s využitím běžných konceptů grafů scény abstrahuje složitosti OpenGL a OpenGL ES, což usnadňuje přidávání 3D obsahu do aplikace. Pokud jste však odborníkem na OpenGL, sada Scene Kit má skvělou podporu pro vázání přímo s OpenGL. Zahrnuje také celou řadu funkcí, které doplňují 3D grafiku, jako je fyzika, a integruje se velmi dobře s několika dalšími architekturami Apple, jako je Core Animation, Core Image a Sprite Kit.

Další informace najdete v naší dokumentaci k souboru SceneKit .

Sada Sprite

Sprite Kit, 2D herní architektura od Společnosti Apple, má některé zajímavé nové funkce v iOS 8 a OS X Yosemite. Patří mezi ně integrace se sadou Scene Kit, podpora shaderu, osvětlení, stíny, omezení, normální generování map a vylepšení fyziky. Zejména nové fyzikální funkce usnadňují přidání realistických efektů do hry.

Další informace najdete v naší dokumentaci k SpriteKitu .

Další změny

Stejně jako hlavní změny v iOSu 8, které jsou popsány výše, Společnost Apple dále aktualizovala mnoho stávajících architektur. Níže jsou podrobně popsány:

  • Základní obrázek – Apple rozšířil svou architekturu pro zpracování obrázků přidáním lepší podpory pro detekci obdélníkových oblastí a kódů QR uvnitř obrázků. Mike Bluestein to zkoumá ve svém blogovém příspěvku s názvem Detekce obrázků v iOSu 8

Zastaralá rozhraní API

Díky všem vylepšením v iOSu 8 je řada rozhraní API zastaralá. Některé z nich jsou podrobně popsané níže.

  • UIApplication – metody a vlastnosti používané k registraci vzdálených oznámení jsou zastaralé. Jedná se o registerForRemoteNotificationTypes a enabledRemoteNotificationTypes.

  • UIViewController – Třídy vlastností a velikostí nahradily metody a vlastnosti použité k popisu orientace rozhraní. Další informace o tom, jak tyto scénáře používat, najdete v tématu Úvod do sjednocených scénářů.

  • UISearchDisplayController – Toto bylo nahrazeno UISearchController v iOS8.

Shrnutí

V tomto článku jsme se podívali na některé nové funkce představené společností Apple v iOS 8.