Einführung in iOS 8

Mit iOS 8 hat Apple eine Fülle neuer Frameworks und APIs bereitgestellt, um Entwickler zu begeistern und zu begeistern. In diesem Leitfaden werden wir diese neuen APIs einführen und sehen, wie iOS 8 sowohl Entwicklern als auch Benutzern zugute kommen kann.

iOS 7 hat die gesamte iOS-Benutzeroberfläche visuell von dem geändert, was Benutzer und Entwickler erwartet hatten, direkt vom ersten i Telefon-Betriebssystem. IOS 8 setzt dies fort, indem viele Frameworks für Entwickler bereitgestellt werden, mit denen Benutzer nahezu jeden Aspekt ihres Lebens direkt von ihrem i Telefon aus steuern können. Beispielsweise kann Gesundheit und Fitness mit HealthKit analysiert werden, Passcodes sind mit Biografie metrischer Authentifizierung mithilfe von LocalAuthentication obsoleszent, App-Erweiterungen öffnen einen Kommunikationskanal zwischen Drittanbieter-Apps, und HomeKit ermöglicht die Möglichkeit, Ihr Haus in ein Home of the Future umzuwandeln.

Wenn iOS 7 die Benutzer begeistern sollte, konzentriert sich iOS 8 auf das Begeistern von Entwicklern mit einer ganzen Palette dieser leckeren neuen Tools.

In diesem Leitfaden werden die neuen APIs für Xamarin.iOS-Entwickler vorgestellt.

Es gibt auch einige APIs, die in iOS 8 veraltet sind, die am Ende dieses Dokuments detailliert beschrieben sind.

Anforderungen

Im Folgenden sind iOS 8-Apps in Visual Studio für Mac erforderlich:

  • Xcode 7 und iOS 8 oder höher – Die neuesten Xcode- und iOS-APIs von Apple müssen auf dem Computer des Entwicklers installiert und konfiguriert werden.
  • Visual Studio für Mac – Die neueste Version von Visual Studio für Mac sollte auf dem Benutzergerät installiert und konfiguriert werden.
  • iOS 8-Gerät oder Simulator – Ein iOS-Gerät, auf dem die neueste Version von iOS 8 zum Testen ausgeführt wird.

Zuhause und Freizeit

iOS 8 hat dazu beigetragen, Apple fest zu pflanzen, und das iOS-Gerät direkt ins Herz Ihres Hauses durch die Verwendung von HomeKit und HealthKit. In diesem Abschnitt werden wir uns ansehen, wie diese neuen Frameworks funktionieren und wie sie in Ihre Xamarin.iOS-Anwendung integriert werden können.

HomeKit

Die Steuerung Ihrer Anwendung von i Telefon ist keine neue Technologieanwendung. Viele verbundene Heimprodukte können über eine iOS-App gesteuert werden. HomeKit setzt dies jedoch einen Schritt weiter, indem ein gemeinsames Protokoll für Heimautomatisierungs-Geräte gefördert und eine öffentliche API bestimmten Herstellern wie iHome, Philips und Honeywell zur Verfügung gestellt wird. Für den Benutzer bedeutet dies, dass sie fast jeden Aspekt ihres Zuhauses nahtlos aus einer Anwendung heraus steuern können. Es ist irrelevant für sie zu wissen, dass sie einen Philips Hue-Glühbirnen oder einen Nestalarm verwenden. Benutzer können auch zahlreiche intelligente Home-Prozesse zusammen in "Szenen" verketten.

Mit HomeKit können Apps von Drittanbietern und Siri Zubehör entdecken und sie zu ihrer persönlichen Home-Konfigurationsdatenbank hinzufügen, diese Daten bearbeiten und bearbeiten und mit Zubehör und ihren Diensten kommunizieren, um eine Aktion auszuführen.

Konfiguration

Das folgende Diagramm zeigt die grundlegende Hierarchie der Konfiguration von HomeKit-Zubehör:

Dieses Diagramm zeigt die grundlegende Hierarchie der Konfiguration von HomeKit-Zubehör

Um mit HomeKit zu beginnen, müssen Entwickler sicherstellen, dass ihr Bereitstellungsprofil den HomeKit-Dienst ausgewählt hat. Apple hat Entwicklern auch ein HomeKit-Simulator-Add-In für Xcode zur Verfügung gestellt. Dies finden Sie im Apple Developer Center unter Hardware IO Tools for Xcode.

Weitere Informationen finden Sie in unserem HomeKit-Leitfaden .

HealthKit

HealthKit ist ein In iOS 8 eingeführtes Framework, das einen zentralen, koordinierten und sicheren Datenspeicher für gesundheitsbezogene Informationen bereitstellt. Das Betriebssystem stellt den Datenschutz und die Sicherheit von Integritätsinformationen und mit der Integritäts-App ein Dashboard für den Benutzer sicher. Mit der Berechtigung des Benutzers können Anwendungen eine vielzahl von Integritätsinformationen lesen und schreiben.

Weitere Informationen zur Verwendung in Ihrer Xamarin.iOS-App finden Sie im Leitfaden "Einführung in HealthKit ".

Erweitern der i Telefon-Funktionalität

Mit iOS8 erhalten Entwickler viel mehr Kontrolle darüber, wer ihre App verwenden kann, und eine höhere Funktion für eine offenere Kommunikation zwischen Drittanbieter-Apps. Features wie App-Erweiterungen und Dokumentauswahl eröffnen eine Welt der Möglichkeiten, wie Anwendungen im Apple-Ökosystem verwendet werden können.

App-Erweiterungen

App-Erweiterungen, um zu vereinfachen, sind eine Möglichkeit, um Apps von Drittanbietern miteinander zu kommunizieren. Um hohe Sicherheitsstandards zu Standard und die Integrität der Sandkasten-Apps aufrechtzuerhalten, geschieht diese Kommunikation nicht direkt zwischen Anwendungen. Stattdessen wird sie von einer Erweiterung in der Mitte durchgeführt.

Der erste Schritt beim Erstellen einer App-Erweiterung besteht darin, den richtigen Erweiterungspunkt zu definieren. Dies ist wichtig, um das Verhalten und die Verfügbarkeit der richtigen APIs sicherzustellen. Um eine App-Erweiterung in Visual Studio für Mac zu erstellen, fügen Sie sie einer vorhandenen Anwendung hinzu, indem Sie Ihrer Lösung ein neues Projekt hinzufügen.

Navigieren Sie im Dialogfeld "Neues Projekt" zu C#>iOS>Unified API-Erweiterungen>, wie im folgenden Screenshot dargestellt:

Erstellung einer neuen Erweiterung

Das Dialogfeld "Neues Projekt" enthält sieben neue Projektvorlagen zum Erstellen von App-Erweiterungen und werden unten erläutert. Beachten Sie, dass viele der Erweiterungen sich auf andere neue APIs in iOS beziehen, z. B. Dokumentauswahl:

  • Aktion – Auf diese Weise können Entwickler eindeutige benutzerdefinierte Interaktive Schaltflächen erstellen, mit denen Benutzer bestimmte Aufgaben ausführen können.
  • Benutzerdefinierte Tastatur – Auf diese Weise können Entwickler den Bereich der integrierten Apple-Tastaturen hinzufügen, indem Sie eine eigene benutzerdefinierte Tastatur hinzufügen. Die beliebte Tastatur, Swype verwendet dies, um ihre Tastatur auf iOS zu bringen.
  • Dokumentauswahl – Dies enthält einen Dokumentauswahl-Ansichtscontroller, mit dem Benutzer außerhalb des Sandkastens der Anwendung auf Dateien zugreifen können.
  • Dateianbieter für die Dokumentauswahl – Dies bietet einen sicheren Speicher für Dateien mithilfe der Dokumentauswahl.
  • Fotobearbeitung – Dies erweitert die Filter und Bearbeitungstools, die bereits von Apple in der Fotos-Anwendung bereitgestellt wurden, um Benutzern mehr Kontrolle und mehr Optionen beim Bearbeiten ihrer Fotos zu bieten.
  • Heute – Dies bietet Anwendungen die Möglichkeit, Widgets im Abschnitt "Heute" des Benachrichtigungscenters anzuzeigen.

Weitere Informationen zur Verwendung von App-Erweiterungen in Xamarin finden Sie im Leitfaden zur Einführung in App-Erweiterungen .

Touch-ID

Die Touch-ID wurde in iOS 7 als Authentifizierungsmöglichkeit für den Benutzer eingeführt – ähnlich einer Kennung. Es war jedoch darauf beschränkt, das Gerät mit dem App Store zu entsperren, iTunes zu verwenden und die iCloud-Schlüsselkette nur zu authentifizieren.

Es gibt nun zwei Möglichkeiten, Touch-ID als Authentifizierungsmechanismus in iOS 8-Anwendungen mit der lokalen Authentifizierungs-API zu verwenden. Es ist derzeit nicht möglich, die lokale Authentifizierung für die Remoteauthentifizierung zu verwenden.

Erstens werden die vorhandenen Schlüsselbunddienste durch die Verwendung neuer Zugriffssteuerungslisten (Keychain Access Control Lists, ACLs) unterstützt. Schlüsselbunddaten können mit der erfolgreichen Authentifizierung eines Benutzerfingerabdrucks entsperrt werden.

Zweitens bietet LocalAuthentication zwei Methoden zum lokalen Authentifizieren Ihrer Anwendung. Entwickler sollten verwenden CanEvaluatePolicy , um zu ermitteln, ob das Gerät Touch-ID akzeptieren kann, und dann EvaluatePolicy den Authentifizierungsvorgang zu starten.

Weitere Informationen zur Touch-ID und zum Integrieren in eine Xamarin.iOS-Anwendung finden Sie in den Leitfäden "Touch ID" und "Face ID" in Xamarin.iOS .

Dokumentauswahl

Die Dokumentauswahl funktioniert mit einem iCloud-Laufwerk für Benutzer, damit der Benutzer Dateien öffnen kann, die in einer anderen App erstellt wurden, sie importieren und bearbeiten und wieder exportieren können. Dies schafft einen intuitiven Workflow und somit eine viel bessere Benutzererfahrung für Benutzer. Die iCloud-Synchronisierung führt diesen einen Schritt weiter – alle änderungen, die in einer Anwendung vorgenommen wurden, werden auch auf allen Ihren Geräten konsistent wiedergegeben.

Weitere Informationen zur Dokumentauswahl und zum Integrieren in eine Xamarin.iOS-Anwendung finden Sie im Leitfaden zur Dokumentauswahl .

Handoff

Handoff, das Teil des größeren Kontinuitätsfeatures ist, führt einen Schritt weiter zur Integration von OS X und iOS durch. Dazu gehören plattformübergreifende AirDrop, die Möglichkeit, i Telefon Anrufe zu tätigen, SMS auf dem iPad und Mac sowie Verbesserungen bei der Tethering von Ihrem i Telefon.

Handoff funktioniert mit iOS 8 und Yosemite und erfordert, dass ein iCloud-Konto bei allen verschiedenen Geräten angemeldet ist, die Sie verwenden möchten. Es sollte mit den meisten vorinstallierten Apple-Apps funktionieren, darunter Safari, iWork, Karten, Kalender und Kontakte.

Weitere Informationen finden Sie in unserem Handoff-Leitfaden .

Einheitliche Storyboards

iOS 8 enthält einen neuen einfacheren Mechanismus zum Erstellen der Benutzeroberfläche – dem einheitlichen Storyboard. Mit einem einzigen Storyboard, um alle unterschiedlichen Hardwarebildschirmgrößen abzudecken, können schnelle und reaktionsfähige Ansichten in einem echten Design erstellt werden, das viele verwendet.

Vor iOS8 haben Entwickler zwischen UIInterfaceOrientation Hoch- und Querformaten unterschieden und UIInterfaceIdiom zwischen iOS-Geräten unterschieden. In iOS8 ist es nicht mehr erforderlich, separate Storyboards für i Telefon- und iPad-Geräte zu erstellen– Die Ausrichtung und das Gerät werden mithilfe von Größenklassen bestimmt.

Jedes Gerät wird durch eine Größenklasse sowohl in der vertikalen als auch in der horizontalen Achse definiert, und es gibt zwei Arten von Größenklassen in iOS 8:

  • Normal - dies gilt entweder für eine große Bildschirmgröße (z. B. ein iPad) oder ein Gadget, das den Eindruck einer großen Größe (z. B. einer UIScrollView) vermittelt.
  • Kompakt - dies gilt für kleinere Geräte (z. B. i Telefon). Diese Größe berücksichtigt die Ausrichtung des Geräts.

Wenn die beiden Konzepte zusammen verwendet werden, ist das Ergebnis ein 2 x 2-Raster, das die verschiedenen möglichen Größen definiert, die in beiden unterschiedlichen Ausrichtungen verwendet werden können, wie im folgenden Diagramm dargestellt:

Ein Diagramm, das das 2 x 2-Raster darstellt, das die verschiedenen möglichen Größen definiert, die in beiden unterschiedlichen Ausrichtungen verwendet werden können

Weitere Informationen zu Größenklassen finden Sie in der Einführung in Unified Storyboards.

Fotokit

Photo Kit ist ein neues Framework, mit dem Anwendungen die Systembildbibliothek abfragen und benutzerdefinierte Benutzeroberflächen erstellen können, um deren Inhalt anzuzeigen und zu ändern. Es umfasst eine Reihe von Klassen, die Bild- und Videoressourcen darstellen, sowie Sammlungen von Ressourcen wie Alben und Ordnern.

Weitere Informationen finden Sie in unserem PhotoKit-Leitfaden .

Spiele

Scene Kit

Scene Kit ist eine 3D-Szenendiagramm-API, die das Arbeiten mit 3D-Grafiken vereinfacht. Es wurde erstmals in OS X 10.8 eingeführt und ist jetzt zu iOS 8 gekommen. Mit dem Scene Kit ist die Erstellung immersiver 3D-Visualisierungen und lässiger 3D-Spiele in OpenGL nicht erforderlich. Basierend auf gängigen Szenendiagrammkonzepten abstrahiert Scene Kit die Komplexitäten von OpenGL und OpenGL ES, wodurch es sehr einfach ist, einer Anwendung 3D-Inhalte hinzuzufügen. Wenn Sie jedoch ein OpenGL-Experte sind, hat Scene Kit auch eine hervorragende Unterstützung für die direkte Bindung mit OpenGL. Es enthält auch zahlreiche Features, die 3D-Grafiken ergänzen, z. B. Physik, und integriert sich sehr gut in verschiedene andere Apple-Frameworks wie Core Animation, Core Image und Sprite Kit.

Weitere Informationen finden Sie in unserer SceneKit-Dokumentation .

Sprite Kit

Sprite Kit, das 2D-Spielframework von Apple, verfügt über einige interessante neue Features in iOS 8 und OS X Yosemite. Dazu gehören integration in Scene Kit, Shaderunterstützung, Beleuchtung, Schatten, Einschränkungen, normale Kartengenerierung und physikalische Verbesserungen. Insbesondere die neuen Physikfeatures machen es sehr einfach, einem Spiel realistische Effekte hinzuzufügen.

Weitere Informationen finden Sie in unserer SpriteKit-Dokumentation .

Weitere Änderungen

Neben den großen Änderungen in iOS 8, die oben beschrieben werden, hat Apple viele vorhandene Frameworks zusätzlich aktualisiert. Dies sind unten aufgeführt:

  • Core Image – Apple hat sein Bildverarbeitungsframework erweitert, indem es eine bessere Unterstützung für die Erkennung rechteckiger Bereiche und QR-Codes innerhalb von Bildern hinzufügt. Mike Bluestein erforscht dies in seinem Blogbeitrag mit dem Titel Image Detection in iOS 8

Nicht mehr unterstützte APIs

Mit allen Verbesserungen in iOS 8 ist eine Reihe von APIs veraltet. Einige davon sind unten aufgeführt.

  • UIApplication – Die Methoden und Eigenschaften für die Registrierung von Remotebenachrichtigungen sind veraltet. Dies sind registerForRemoteNotificationTypes und enabledRemoteNotificationTypes.

  • UIViewController – Eigenschaften und Größenklassen haben die Methoden und Eigenschaften ersetzt, die zum Beschreiben der Schnittstellenausrichtung verwendet werden. Weitere Informationen zur Verwendung finden Sie in der Einführung in Unified Storyboards .

  • UISearchDisplayController – Dies wurde durch UISearchController in iOS8 ersetzt.

Zusammenfassung

In diesem Artikel haben wir uns einige der neuen Features angesehen, die apple in iOS 8 eingeführt hat.