Úvod do iOSu 10
S novou sadou iOS 10 SDK společnost Apple zahrnula nová rozhraní API a služby, které vývojářům umožňují vytvářet nové kategorie aplikací a funkcí. Aplikace pro iOS teď může rozšířit aplikace Zprávy, Siri, Telefon a Mapy tak, aby poskytovala bohaté a poutavé funkce koncovému uživateli, který byl dříve nedostupný.
Další informace o iOSu 10 najdete v dokumentaci k iOSu a aplikacím společnosti Apple.
Novinky v iOSu 10
Apple přidal několik nových rozhraní API a služeb v iOSu 10 spolu s mnoha vylepšeními stávajících funkcí, mezi které patří:
Přizpůsobení zobrazení skutečného tónu
Technologie True Tone Display společnosti Apple používá senzor okolního světla v zařízení s iOSem k dynamické úpravě barvy a intenzity displeje tak, aby odpovídal aktuálním světelným podmínkám. iOS 10 poskytuje nový klíč UIWhitePointAdaptivityStyle , který lze přidat do souboru aplikace Info.plist
a řídí, jak true tón aplikuje standardní barevný posun.
K dispozici jsou následující hodnoty:
UIWhitePointAdaptivityStyleStandard
Výchozí – Použijte standardní adaptativu white-point.UIWhitePointAdaptivityStyleReading
– Používá se pro aplikace zaměřené na čtení.UIWhitePointAdaptivityStyleGame
- Používá se pro aplikace zaměřené na hry.UIWhitePointAdaptivityStyleVideo
– Používá se pro aplikace zaměřené na video.UIWhitePointAdaptivityStylePhoto
- Používá se pro aplikace zaměřené na fotografii, kde je věrnost barev důležitější než úpravy bílých bodů prostředí.
Rozšíření aplikací
Apple poskytl několik nových bodů rozšíření aplikací v iOSu 10:
- Adresář volání
- Uživatelské rozhraní Záměry a záměry
- Zprávy
- Obsah oznámení
- Notification Services
- Balíček nálepek
Rozšíření aplikací klávesnice třetích stran mají navíc následující vylepšení:
- Nová
DocumentInputMode
vlastnostUITextDocumentProxy
třídy může určit jazyk zadávání dokumentu a umožnit, aby rozšíření klávesnice bylo v souladu s tímto jazykem. - Nová
HandleInputModeList
metoda umožňuje rozšíření klávesnice zobrazit nabídku pro výběr klávesnice systému v reakci na klepnutí na glóbusovou klávesu.
Další informace najdete v našem úvodu k rozšířením, integraci aplikací zpráv, úvod k proaktivním návrhům, úvodu do SiriKitu, úvodu k oznámením uživatelů a průvodci programováním rozšíření aplikací společnosti Apple.
Vylepšení hledání aplikací
Core Spotlight v iOSu 10 nabízí několik vylepšení vyhledávání aplikací, například:
- Crowdsourced Deep-Link Popularity (s rozdílovým soukromím) – poskytuje způsob, jak ve výsledcích hledání propagovat obsah aplikace s hlubokým odkazem.
- Vyhledávání v aplikaci – Pomocí nové
CSSearchQuery
třídy můžete poskytovat možnost vyhledávání ve spotlightu v aplikaci podobně jako aplikace Pošta, Zprávy a Poznámky. - Pokračování hledání – Umožňuje uživateli spustit hledání ve Spotlightu nebo Safari a pak otevřít aplikaci a pokračovat v hledání.
- Vizualizace výsledků ověření – Nástroj apple App Search API Validation Tool teď při předformulování testů zobrazuje vizuální reprezentaci značek a hloubkového propojení webu.
- Sdílení obrázků aplikace Zpráv – Umožňuje, aby se oblíbené obrázky v aplikaci, které jsou k dispozici pro sdílení ve zprávách (prostřednictvím rozšíření aplikace zpráv), zobrazovaly ve vyhledávání spotlight.
Další informace najdete v průvodci vylepšeními vyhledávání aplikací.
Vylepšení Apple Pay
Apple provedl několik vylepšení služby Apple Pay v iOS 10, která uživateli umožňují provádět zabezpečené platby z webů a prostřednictvím interakce se Siri a Maps.
S iOSem 10 jsme přidali několik nových rozhraní API, která pracují s iOSem i watchOS, aby podporovala dynamické platební sítě a nové testovací prostředí sandboxu.
Kromě toho jsme rozšířili architekturu PassKit tak, aby podporovala Apple Pay mimo a UIKit
umožňovala vystavitelům karet prezentovat své karty v rámci svých aplikací.
Další informace najdete v našem průvodci vylepšeními apple pay.
Alternativní ikony aplikace
Apple přidal do iOS 10.3 několik vylepšení, která aplikaci umožňují spravovat její ikonu:
ApplicationIconBadgeNumber
- Získá nebo nastaví odznáček ikony aplikace ve Springboardu.SupportsAlternateIcons
– Pokudtrue
má aplikace alternativní sadu ikon.AlternateIconName
– Vrátí název alternativní ikony, která je aktuálně vybrána, nebonull
pokud používáte primární ikonu.SetAlternameIconName
– Pomocí této metody přepněte ikonu aplikace na danou alternativní ikonu.
Další informace najdete v našem průvodci ikonami alternativních aplikací.
Úvod do CallKitu
Nové rozhraní CallKit API v iOSu 10 poskytuje způsob integrace aplikací VOIP s uživatelským rozhraním iPhone a poskytování známého rozhraní a prostředí koncovému uživateli. Pomocí tohoto rozhraní API můžou uživatelé zobrazovat a pracovat s voláními VOIP ze zamykací obrazovky zařízení s iOSem a spravovat kontakty pomocí zobrazení Oblíbené a Poslední položky v aplikaci Telefon.
Kromě toho rozhraní CallKit API poskytuje možnost vytvářet rozšíření aplikací, která můžou přidružit telefonní číslo ke jménu (ID volajícího) nebo říct systému, kdy má být číslo zablokováno (blokování volání).
Další informace najdete v našem průvodci úvodem do callkitu .
Integrace aplikace Zprávy
iOS 10 umožňuje zahrnutí rozšíření aplikace zpráv do řešení Xamarin.iOS, které se integruje s aplikací Zprávy a prezentuje uživateli nové funkce. Rozšíření může posílat texty, nálepky, mediální soubory a interaktivní zprávy. K dispozici jsou dva typy rozšíření aplikace Message App:
- Balíčky nálepek – obsahuje kolekci nálepek, které uživatel může přidat do zprávy. Balíčky nálepek je možné vytvářet bez psaní kódu.
- iMessage App - Může prezentovat vlastní uživatelské rozhraní v aplikaci Zprávy pro výběr nálepek, zadávání textu, včetně mediálních souborů (s volitelnými převody typů) a vytváření, úpravy a odesílání zpráv interakce.
Další informace najdete v našem průvodci integrací aplikace zpráv.
Vylepšení vydavatele zpráv
S iOSem 10 umožní Apple všem z hlavních časopisů a nových organizací až po bloggery a nezávislé vydavatele, aby si zaregistrovali a produkt a doručili obsah do aplikace Apple News. Další informace najdete v dokumentaci ke zprávám společnosti Apple.
Poskytování hmatové zpětné vazby
Na iPhonu 7 a iPhonu 7 Plus společnost Apple zahrnula nové haptické odpovědi, které poskytují další způsoby fyzického zapojení uživatele. Využijte nové možnosti zpětné vazby pro dotykové chování, abyste získali pozornost uživatele a posílili své akce.
Několik předdefinovaných prvků uživatelského rozhraní již poskytuje haptickou zpětnou vazbu, jako jsou výběry, přepínače a posuvníky. iOS 10 teď přidává možnost programově aktivovat haptika pomocí konkrétní podtřídy UIFeedbackGenerator
třídy.
Další informace najdete v našem průvodci poskytnutím haptické zpětné vazby .
Proaktivní návrhy
iOS 10 představuje nové způsoby řízení zapojení do aplikace tím, že umožní systému aktivně prezentovat užitečné informace automaticky uživateli v odpovídajících časech. Stejně jako iOS 9 poskytuje možnost přidat do aplikace hloubkové vyhledávání pomocí Spotlight, Handoff a Siri Suggestions, s iOSem 10 může aplikace zpřístupnit funkce, které může systém prezentovat uživateli z následujících umístění:
- Přepínač aplikací
- Zamykací obrazovka
- CarPlay
- Maps
- Interakce Siri
- Návrhy QuickType
Aplikace tuto funkci zveřejňuje systému pomocí kolekce technologií, jako jsou NSUserActivity, webové revize, Core Spotlight, MapKit, Přehrávač médií a UIKit.
Další informace najdete v našem průvodci úvodem k proaktivním návrhům .
Kontrola žádosti o aplikaci
Nová verze iOS 10.3 umožňuje RequestReview()
aplikaci pro iOS požádat uživatele, aby ji ohodnotit nebo zkontroloval. I když se tato metoda dá volat v jakémkoli okamžiku, kdy dává smysl v uživatelském prostředí, proces kontroly se řídí a zpracovává zásadami App Storu. V důsledku toho tato metoda může nebo nemusí zobrazovat upozornění a nikdy by neměla být volána v reakci na akci uživatele, například klepnutím na tlačítko.
Další informace najdete v našem průvodci kontrolou aplikace žádostí.
Vylepšení zabezpečení a ochrany osobních údajů
Apple provedl několik vylepšení zabezpečení i ochrany osobních údajů v iOSu 10, která vývojářům pomůže zlepšit zabezpečení svých aplikací a zajistit ochranu osobních údajů koncového uživatele.
V důsledku toho musí aplikace spuštěné v iOSu 10 (nebo novějším) staticky deklarovat svůj záměr přistupovat ke konkrétním funkcím nebo informacím o uživateli zadáním jednoho nebo více klíčů specifických pro ochranu osobních údajů do souborů Info.plist
, které vysvětlují uživateli, proč chce aplikace získat přístup.
Další informace najdete v průvodci vylepšeními zabezpečení a ochrany osobních údajů.
SiriKit
SiriKit pro iOS 10 umožňuje aplikaci Xamarin.iOS poskytovat služby, které jsou přístupné pro uživatele pomocí Siri na zařízení s iOSem. Tato funkce je k dispozici v jednom nebo více rozšířeních aplikací pomocí nových architektur uživatelského rozhraní Intents a Intents.
SiriKit podporuje následující domény služeb:
- Hlasové hovory nebo videohovory.
- Rezervace jízdy.
- Vedení cvičení.
- Zasílání zpráv.
- Hledání fotek.
- Odesílání nebo příjem plateb.
Když uživatel odešle žádost o Siri zahrnující jednu ze služeb rozšíření aplikace, SiriKit odešle rozšíření objekt záměru, který popisuje žádost uživatele spolu se všemi podpůrnými daty. Rozšíření aplikace pak vygeneruje příslušný objekt Response pro daný záměr a podrobně popisuje, jak rozšíření dokáže zpracovat požadavek.
I když Siri obvykle zpracovává veškerou interakci uživatelů, rozšíření aplikace může použít architekturu uživatelského rozhraní záměru k prezentaci bohatého vlastního uživatelského rozhraní s brandingem aplikace a dalšími informacemi.
Další informace najdete v našem průvodci úvodem do SiriKitu .
Rozpoznávání řeči
iOS 10 obsahuje nové rozhraní SPEECH API, které aplikaci umožňuje podporovat průběžné rozpoznávání řeči a přepis řeči (z živých nebo nahraných zvukových proudů) do textu.
Vzhledem k tomu, že rozpoznávání řeči vyžaduje přenos a dočasné ukládání dat na serverech Společnosti Apple, musí aplikace požádat uživatele o oprávnění k rozpoznávání zahrnutím NSSpeechRecognitionUsageDescription
klíče do souboru Info.plist
a volání SFSpeechRecognizer.RequestAutorization
metody.
Další informace najdete v naší příručce Úvod do rozpoznávání řeči.
Oznámení uživatelů
Architektura oznámení uživatelů pro iOS 10 nově umožňuje doručování a zpracování místních a vzdálených oznámení. Pomocí této architektury může aplikace nebo rozšíření aplikace naplánovat doručování místních oznámení zadáním sady podmínek, jako je umístění nebo čas dne.
Kromě toho může aplikace nebo rozšíření přijímat (a potenciálně upravovat) místní i vzdálená oznámení, která se doručují do zařízení s iOSem uživatele.
Nová architektura uživatelského rozhraní pro oznámení uživatelů umožňuje aplikaci nebo rozšíření aplikace přizpůsobit vzhled místních i vzdálených oznámení, když se uživateli zobrazí.
Další informace najdete v našem průvodci architekturou oznámení uživatelů.
Účet odběratele videa
Nové rozhraní účtu předplatitele videa pro iOS 10 umožňuje aplikacím, které podporují ověřené streamování nebo videohovory na vyžádání, aby se ověřily pomocí svého kabelového nebo satelitního televizního poskytovatele pomocí jednotného přihlašování pro koncového uživatele.
Wide Color
iOS 10 rozšiřuje podporu pro formáty pixelů rozšířeného rozsahu a široké gamut barevné prostory v celém systému, včetně architektur, jako jsou Core Graphics, Core Image, Metal a AVFoundation. Podpora zařízení s širokými barevnými displeji je dále jednodušší tím, že toto chování poskytuje v celém grafickém zásobníku.
Kromě toho byla sada UIKit upravena tak, aby fungovala v novém barevném prostoru sRGB, což usnadňuje kombinování barev v širokých barevných gamutech bez významné ztráty výkonu.
Apple nabízí při práci s širokými barvami následující osvědčené postupy:
- UIColor teď používá barevný prostor sRGB a už neuchytá hodnoty k
1.0
rozsahu0.0
. Pokud aplikace spoléhá na předchozí chování svorky, bude nutné ji upravit pro iOS 10. - Prostředí výkresu se nakonfiguruje pro barevný prostor sRGB při provádění vlastního
UIView
výkresu na iPadu Pro. - Pokud aplikace provádí vlastní vykreslování
UIImages
, použijte novou TŘÍDU UIGraphicsImageRender k určení použití rozšířeného rozsahu nebo standardního rozsahu formátů. - Při použití rozhraní API nízké úrovně, jako je základní grafika nebo kov pro zpracování obrázků, by vývojář měl použít rozšířený barevný prostor rozsahu a pixelový formát, který podporuje 16bitové hodnoty s plovoucí desetinou čárkou. V případě potřeby bude muset vývojář ručně upnout hodnoty barevných komponent.
- Základní grafika, základní image a metalové shadery výkonu poskytují nové metody pro převod mezi těmito dvěma barevnými prostory.
Další informace najdete v našem průvodci úvodem k široké barvě .
Vylepšení widgetů
Apple zavedl několik vylepšení systému widgetů, aby se zajistilo, že widgety vypadají skvěle na jakémkoli pozadí, které existuje na nové zamykací obrazovce iOS 10. Vlastnost NotificationCenterVibrancyEffect je zastaralá a byla nahrazena novými vlastnostmi WidgetPrimaryVibrancyEffect nebo WidgetSecondaryVibrancyEffect . Widgety teď navíc obsahují vlastnost NCWidgetDisplayMode , která umožňuje vývojáři popsat, kolik obsahu je k dispozici a umožňuje uživateli rozbalit a sbalit obsah.
Další informace najdete v průvodci vylepšeními widgetů pro vyhledávání a domovskou obrazovku.
Další změny architektury
Kromě hlavních změn architektury a doplňků uvedených výše společnost Apple provedla v iOSu 10 mnoho dalších menších změn architektury.
Další informace najdete v průvodci dalšími změnami architektury.
Zastaralá rozhraní API
V iOSu 10 jsou zastaralá následující rozhraní API:
- Třídy
CKDiscoverAllContactsOperation
aCKFetchRecordChangesOperation
,CKDiscoverUserInfosOperation
CKDiscoveredUserInfo
byly zastaralé v CloudKitu pro iOS 10. Místo toho použijte třídy CKDiscoverAllUserIdentitiesOperation, CKUserIdentity a CKFetchRecordZoneChangesOperation (které podporují sdílení záznamů). - Několik rozhraní API CKSubscription (například předplatná založená na zónách a dotazování) jsou zastaralá. Místo toho použijte rozhraní API CKRecordZoneSubscription a CKQuerySubscription.
- Symboly NSPersistentStoreCoordinator související s všudypřítomným obsahem jsou zastaralé.
ADBannerView
ADInterstitialAd
a související symboly ve třídě UIViewController byly zastaralé.- Symboly SKUniform související s hodnotami s plovoucí desetinou čárkou jsou zastaralé.
- Sada
UILocalNotification
UIKit ,UIMutableUserNotificationAction
,UIUserNotificationCategory
UIMutableUserNotificationCategory
UIUserNotificationAction
aUIUserNotificationSettings
třídy jsou zastaralé. Místo toho použijte architekturu oznámení uživatelů. - Metody
HandleActionForLocalNotification
,HandleActionForRemoteNotification
DidReceiveLocalNotification
aDidReceiveRemoteNotification
WatchKit byly zastaralé. Místo toho použijte metodyHandleActionForNotification
aDidReceiveNotification
metody. - Metody
DidReceiveLocalNotification
WKExtensionDelegateDidReceiveRemoteNotification
jsou zastaralé. Vytvořte instanci UNUserNotificationCenterDelegate, která implementuje příslušné metody a přiřadí ji kDelegate
vlastnosti UNUserNotificationCenter objektu. - Aplikace Game Center je zastaralá a odebraná z iOSu. Pokud aplikace používá GameKit, musí prezentovat vlastní rozhraní pro zobrazení funkcí GameKitu, jako jsou tabulky výsledků atd.
Úplný seznam vyřazení najdete v dokumentaci k rozdílům rozhraní API pro iOS 9.3 a iOS 10.0 od Společnosti Apple.