Úvod do iOSu 8

S iOSem 8 poskytuje Apple celou řadu nových architektur a rozhraní API, která můžou budit a potěšit vývojáře. 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 vývojářů i uživatelů.

IOS 7 vizuálně změnilo celé uživatelské rozhraní iOSu od toho, co uživatelé a vývojáři očekávali, přímo od prvního iPhone operačního systému. IOS 8 to pokračuje tím, že poskytuje mnoho architektur pro vývojáře, což umožňuje uživatelům řídit téměř všechny aspekty jejich života přímo z jejich iPhone. Například stav a fitness je možné analyzovat pomocí HealthKitu, hesla jsou obsolescentní biometrickým ověřováním pomocí LocalAuthentication, rozšíření aplikací otevírají komunikační kanál mezi aplikacemi třetích stran a HomeKit umožňuje změnit váš dům na domovskou stránku budoucnosti.

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.

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

Požadavky

K vytváření aplikací pro iOS 8 v Visual Studio pro Mac se vyžadují 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í Xcode a iOS.
  • 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 pomáhá pevně vysadit Apple a zařízení s iOSem přímo do srdce vašeho domu 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

Řízení zařízení z vašeho iPhone není novou aplikací technologií. Mnoho připojených domácích produktů je možné ovládat prostřednictvím aplikace pro iOS. HomeKit teď ale tento krok dále podporuje společný protokol pro zařízení automatizace domů a zpřístupněním veřejného rozhraní API pro určité výrobce, jako je iHome, Philips a Honeywell. Pro uživatele to znamená, že může ovládat 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é můžou také zřetězit řadu inteligentních domácích procesů do "Scén".

Díky HomeKitu můžou aplikace třetích stran a Siri objevovat doplňky a přidávat je do své osobní domácí konfigurační databáze, upravovat a pracovat s nimi a komunikovat s příslušenstvím a jejich službami za účelem provedení akce.

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 pro simulátor 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 zavedená 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 ří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í iPhone

U iOS8 mají vývojáři mnohem větší kontrolu nad tím, kdo může svou aplikaci používat, a vyšší 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 lze aplikace používat v ekosystému Společnosti Apple.

Rozšíření aplikací

Rozšíření aplikací, která si zjednoduší, představují způsob, jak mezi sebou komunikovat aplikace třetích stran. Aby se zachovaly vysoké standardy zabezpečení a aby byla zachována integrita aplikací v izolovaném prostoru (sandbox), tato komunikace se 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 vašeho řešení.

V dialogovém okně Nový Project přejděte na C#>iOSUnified>APIExtensions>, jak je znázorněno na následujícím snímku obrazovky:

Creating a new extension

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

  • Akce – To vývojářům umožňuje vytvářet jedinečná tlačítka vlastních akcí, která uživatelům umožňují provádět určité úlohy.
  • Vlastní klávesnice – Díky tomu můžou vývojáři přidávat do rozsahu integrovaných klávesnic Apple přidáním vlastní klávesnice. Oblíbená klávesnice Swype tuto funkci používá k přenesení klávesnice do iOSu.
  • Výběr dokumentu – Obsahuje kontroler zobrazení pro výběr dokumentů, který uživatelům umožňuje přístup k souborům mimo sandbox aplikace.
  • Zprostředkovatel souborů pro výběr dokumentu – To poskytuje zabezpečené úložiště souborů pomocí nástroje Pro výběr dokumentu.
  • Úpravy fotek – Tím se rozšíří filtry a nástroje pro úpravy, které už apple poskytuje v aplikaci Fotky, aby uživatelé měli větší kontrolu a další možnosti při úpravách svých fotek.
  • Dnes – To umožňuje aplikacím zobrazovat widgety v části Dnes v Centru oznámení.

Další informace o používání rozšíření aplikací v Xamarinu najdete v příručce Úvod k rozšířením aplikací .

Touch ID

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

V aplikacích pro iOS 8 teď existují dva způsoby použití Touch ID jako ověřovacího mechanismu pomocí rozhraní API místního ověřování. V současné době není možné k vzdálenému ověřování 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ů ACL (Keycha Access Control in). 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 ověření vaší aplikace místně. 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 ho integrovat do aplikace Xamarin.iOS, najdete v průvodcích Xamarin.iOS touch ID a Face ID .

Výběr dokumentu

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

Další informace o nástroji Pro výběr dokumentů podrobněji a informace o tom, jak ho integrovat do aplikace Xamarin.iOS, najdete v průvodci výběrem dokumentu .

Handoff

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 iPhone hovory, SMS na iPad a Mac a vylepšení pro tethering z vašeho iPhone.

Handoff funguje s iOS 8 a Yosemite a vyžaduje, aby se účet iCloud přihlásil 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í mechanismu pro vytvoření uživatelského rozhraní – sjednoceného scénáře. S jedním scénářem pro pokrytí všech různých velikostí hardwarových obrazovek je možné rychle a responzivní zobrazení vytvořit ve skutečném stylu "design 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šovat mezi zařízeními s iOSem. V iOSu8 už není nutné vytvářet samostatné scénáře pro iPhone a iPad zařízení – 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 existují dva typy tříd velikostí v iOSu 8:

  • Běžná – jedná se o velkou velikost obrazovky (například iPad) nebo miniaplikaci, která dává dojem velké velikosti (například UIScrollView)
  • Kompaktní – jedná se o menší zařízení (například iPhone). Tato velikost bere v úvahu orientaci zařízení.

Pokud se tyto dva koncepty použijí společně, výsledkem je mřížka 2 x 2, která definuje různé možné velikosti, které lze použít v obou různý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á aplikacím umožňuje dotazovat se na knihovnu systémových imagí a vytvářet vlastní uživatelská rozhraní pro zobrazení a úpravu jeho obsahu. Zahrnuje řadu tříd, které představují prostředky obrázků a videí, 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 Scene Kit je rozhraní API pro graf 3D scény, které zjednodušuje práci s 3D grafikou. Poprvé byl představen v OS X 10.8 a nyní přišel do iOS 8. Sada Scene Kit vytváří imerzivní 3D vizualizace a neformální 3D hry nevyžadují odborné znalosti v OpenGL. Sada Scene Kit vychází z běžných konceptů grafů scény a abstrahuje složitost OpenGL a OpenGL ES, což usnadňuje přidávání 3D obsahu do aplikace. Pokud jste ale odborníkem na OpenGL, sada Scene Kit má skvělou podporu pro přivádění přímo s OpenGL. Zahrnuje také ř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 Základní animace, Základní obrázek a Sada Sprite.

Další informace najdete v naší dokumentaci k sadě 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, Apple navíc aktualizoval 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á v jeho blogovém příspěvku s názvem Detekce obrázků v iOS 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 je používat, najdete v úvodu k jednotným scénářům .

  • UISearchDisplayController – Toto bylo nahrazeno UISearchController v iOS8.

Souhrn

V tomto článku jsme se podívali na některé z nových funkcí zavedených společností Apple v iOSu 8.