Partager via


Introduction à iOS 8

Avec iOS 8, Apple a fourni une pléthore de nouvelles infrastructures et API pour susciter et ravir les développeurs. Dans ce guide, nous allons présenter ces nouvelles API et voir comment iOS 8 peut bénéficier aux développeurs et aux utilisateurs.

iOS 7 a visuellement modifié l’ensemble de l’interface utilisateur iOS de ce que les utilisateurs et les développeurs attendaient, directement à partir du premier système d’exploitation i Téléphone. IOS 8 continue avec cela en fournissant de nombreux frameworks pour les développeurs, ce qui permet aux utilisateurs de contrôler presque tous les aspects de leur vie directement de leur i Téléphone. Par exemple, l’intégrité et la forme physique peuvent être analysées avec HealthKit, les codes secrets sont obsolescents avec l’authentification biométrique à l’aide de LocalAuthentication, les extensions d’application ouvrent un canal de communication entre les applications tierces et HomeKit permet de transformer votre maison en maison de l’avenir.

Si iOS 7 était sur le plaisir des utilisateurs, iOS 8 se concentre sur le plaisir des développeurs avec toute une gamme de ces nouveaux outils savoureux.

Ce guide présente les nouvelles API pour les développeurs Xamarin.iOS.

Il existe également quelques API qui ont été déconseillées dans iOS 8, qui sont détaillées à la fin de ce document.

Spécifications

Les éléments suivants sont nécessaires pour créer des applications iOS 8 dans Visual Studio pour Mac :

  • Xcode 7 et iOS 8 ou ultérieur : les dernières API Xcode et iOS d’Apple doivent être installées et configurées sur l’ordinateur du développeur.
  • Visual Studio pour Mac : la dernière version de Visual Studio pour Mac doit être installée et configurée sur l’appareil utilisateur.
  • Appareil ou simulateur iOS 8 : appareil iOS exécutant la dernière version d’iOS 8 à des fins de test.

Accueil et loisirs

iOS 8 a contribué à planter fermement Apple, et l’appareil iOS directement au cœur de votre maison grâce à l’utilisation de HomeKit et HealthKit. Dans cette section, nous allons examiner le fonctionnement de ces nouvelles infrastructures et la façon dont elles peuvent être intégrées à votre application Xamarin.iOS.

HomeKit

Contrôler vos appliances à partir de votre i Téléphone n’est pas une nouvelle application de technologie ; de nombreux produits connectés peuvent être contrôlés via une application iOS. Cependant HomeKit prend maintenant cette étape en promulisant un protocole commun pour les appareils d’automatisation à domicile et en rendant une API publique disponible pour certains fabricants, tels que iHome, Philips et Honeywell. Pour l’utilisateur, cela signifie qu’il peut contrôler presque tous les aspects de sa maison en toute transparence à partir d’une application. Il n’est pas pertinent pour eux de savoir qu’ils utilisent une ampoule Philips Hue, ou une alarme de nid. Les utilisateurs peuvent également chaîner de nombreux processus de maison intelligente ensemble en « Scènes ».

Avec HomeKit, les applications tierces et Siri peuvent découvrir des accessoires et les ajouter à leur base de données de configuration personnelle, modifier et agir sur ces données, et communiquer avec les accessoires et leurs services pour effectuer une action.

Configuration

Le diagramme ci-dessous montre la hiérarchie de base de la configuration des accessoires HomeKit :

Ce diagramme montre la hiérarchie de base de la configuration des accessoires HomeKit

Pour commencer à utiliser HomeKit, les développeurs doivent s’assurer que leur profil d’approvisionnement a le service HomeKit sélectionné. Apple a également fourni aux développeurs un complément de simulateur HomeKit pour Xcode. Vous trouverez cela dans le Centre de développement Apple, sous Hardware IO Tools for Xcode.

Pour plus d’informations, consultez notre guide HomeKit .

HealthKit

HealthKit est une infrastructure introduite dans iOS 8 qui fournit un magasin de données centralisé, coordonné et sécurisé pour les informations relatives à l’intégrité. Le système d’exploitation garantit la confidentialité et la sécurité des informations d’intégrité et, avec l’application Intégrité, un tableau de bord pour l’utilisateur. Avec l’autorisation de l’utilisateur, les applications peuvent lire et écrire un large éventail d’informations sur l’intégrité.

Pour plus d’informations sur l’utilisation de cette fonctionnalité dans votre application Xamarin.iOS, reportez-vous au guide Présentation de HealthKit .

Extension de la fonctionnalité i Téléphone

Avec iOS8, les développeurs ont beaucoup plus de contrôle sur la personne qui peut utiliser leur application et une capacité accrue pour une communication plus ouverte entre des applications tierces. Les fonctionnalités telles que les extensions d’application et le sélecteur de documents ouvrent un monde de possibilités pour la façon dont les applications peuvent être utilisées dans l’écosystème d’Apple.

Extensions d’application

Les extensions d’application, pour surimplifier, sont un moyen pour les applications tierces de communiquer entre elles. Pour maintenir des normes de sécurité élevées et respecter l’intégrité des applications en bac à sable( sandbox), cette communication ne se produit pas directement entre les applications. Au lieu de cela, elle est effectuée par une extension au milieu.

La première étape de la création d’une extension d’application consiste à définir le point d’extension approprié, ce qui est important pour garantir le comportement et la disponibilité des API appropriées. Pour créer une extension d’application dans Visual Studio pour Mac, ajoutez-la à une application existante en ajoutant un nouveau projet à votre solution.

Dans la boîte de dialogue Nouveau projet, accédez à C#>iOS>Unified API>Extensions, comme illustré dans la capture d’écran ci-dessous :

Créer une nouvelle extension

La boîte de dialogue Nouveau projet fournit sept nouveaux modèles de projet pour la création d’extensions d’application et sont décrits ci-dessous. Notez que de nombreuses extensions sont liées à d’autres API dans iOS, telles que le sélecteur de documents :

  • Action : cela permet aux développeurs de créer des boutons d’action personnalisés uniques permettant aux utilisateurs d’effectuer certaines tâches
  • Clavier personnalisé : cela permet aux développeurs d’ajouter à la plage de claviers Apple intégrés en ajoutant leur propre clavier personnalisé. Le clavier populaire, Swype l’utilise pour apporter leur clavier à iOS.
  • Sélecteur de documents : il contient un contrôleur de vue sélecteur de documents qui permet aux utilisateurs d’accéder aux fichiers en dehors du bac à sable de l’application.
  • Fournisseur de fichiers sélecteur de documents : il fournit un stockage sécurisé pour les fichiers à l’aide du sélecteur de documents.
  • Édition de photos : cela s’étend sur les filtres et les outils de modification déjà fournis par Apple dans l’application Photos pour donner aux utilisateurs plus de contrôle et plus d’options lors de la modification de leurs photos.
  • Aujourd’hui : cela permet aux applications d’afficher des widgets dans la section Aujourd’hui du Centre de notification.

Pour plus d’informations sur l’utilisation des extensions d’application dans Xamarin, consultez le guide Introduction aux extensions d’application.

Touch ID

L’ID tactile a été introduit dans iOS 7 comme moyen d’authentifier l’utilisateur, similaire à un code secret. Toutefois, il était limité au déverrouillage de l’appareil, à l’aide de l’App Store, à l’aide d’iTunes et à l’authentification du trousseau iCloud uniquement

Il existe maintenant deux façons d’utiliser Touch ID comme mécanisme d’authentification dans les applications iOS 8 à l’aide de l’API d’authentification locale. Il n’est actuellement pas possible d’utiliser l’authentification locale pour s’authentifier à distance.

Tout d’abord, il aide les services de trousseau existants via l’utilisation de nouvelles listes de contrôle d’accès de trousseau (ACL). Les données de trousseau peuvent être déverrouillées avec l’authentification réussie d’une empreinte digitale des utilisateurs.

Ensuite, LocalAuthentication fournit deux méthodes pour authentifier votre application localement. Les développeurs doivent utiliser CanEvaluatePolicy pour déterminer si l’appareil est capable d’accepter l’ID tactile, puis EvaluatePolicy de démarrer l’opération d’authentification.

Pour plus d’informations sur l’ID tactile et découvrir comment l’intégrer dans une application Xamarin.iOS, consultez les guides Touch ID et Face ID dans les guides Xamarin.iOS .

Sélecteur de document

Le sélecteur de documents fonctionne avec un lecteur iCloud d’utilisateurs pour permettre à l’utilisateur d’ouvrir des fichiers créés dans une autre application, d’importer et de les manipuler et de les exporter à nouveau. Cela crée un flux de travail intuitif et, par conséquent, une expérience beaucoup plus performante pour les utilisateurs. La synchronisation iCloud effectue cette étape plus loin : toutes les modifications apportées dans une application seront également reflétées de manière cohérente sur tous vos appareils.

Pour en savoir plus sur le sélecteur de documents et apprendre à l’intégrer dans une application Xamarin.iOS, reportez-vous au guide De présentation du sélecteur de documents.

Handoff

Le transfert, qui fait partie de la fonctionnalité de continuité plus grande, prend un pas plus loin dans l’intégration d’OS X et iOS. Cela inclut AirDrop multiplateforme, la possibilité de prendre des appels i Téléphone, sms sur l’iPad et Mac, et des améliorations dans la connexion de votre i Téléphone.

Le transfert fonctionne avec iOS 8 et Yosemite, et nécessite qu’un compte iCloud soit connecté à tous les différents appareils que vous souhaitez utiliser. Il doit fonctionner avec la plupart des applications Apple préinstallées, notamment Safari, iWork, Cartes, Calendriers et Contacts.

Pour plus d’informations, consultez notre guide de transfert .

Storyboards unifiés

iOS 8 inclut un nouveau mécanisme plus simple à utiliser pour créer l’interface utilisateur , le storyboard unifié. Avec un seul storyboard pour couvrir toutes les différentes tailles d’écran matérielles, des vues rapides et réactives peuvent être créées dans un véritable style de « conception une fois, utiliser plusieurs ».

Avant iOS8, les développeurs utilisaient UIInterfaceOrientation la distinction entre les modes portrait et paysage et UIInterfaceIdiom la distinction entre les appareils iOS. Dans iOS8, il n’est plus nécessaire de créer des storyboards distincts pour les appareils i Téléphone et iPad, l’orientation et l’appareil sont déterminés à l’aide des classes de taille.

Chaque appareil est défini par une classe de taille, à la fois dans l’axe vertical et horizontal, et il existe deux types de classes de taille dans iOS 8 :

  • Normal : il s’agit d’une grande taille d’écran (par exemple, un iPad) ou d’un gadget qui donne l’impression d’une grande taille (par exemple, uiScrollView)
  • Compact : il s’agit d’appareils plus petits (tels que l’i Téléphone). Cette taille prend en compte l’orientation de l’appareil.

Si les deux concepts sont utilisés ensemble, le résultat est une grille de 2 x 2 qui définit les différentes tailles possibles qui peuvent être utilisées dans les deux orientations différentes, comme illustré dans le diagramme suivant :

Diagramme représentant la grille 2 x 2 qui définit les différentes tailles possibles qui peuvent être utilisées dans les deux orientations différentes

Pour plus d’informations sur les classes de taille, reportez-vous à la présentation des storyboards unifiés.

Photo Kit

Photo Kit est une nouvelle infrastructure qui permet aux applications d’interroger la bibliothèque d’images système et de créer des interfaces utilisateur personnalisées pour afficher et modifier son contenu. Il comprend un certain nombre de classes qui représentent des ressources image et vidéo, ainsi que des collections de ressources telles que des albums et des dossiers.

Pour plus d’informations, consultez notre guide PhotoKit .

Jeux

Kit de scène

Scene Kit est une API graphique de scène 3D qui simplifie l’utilisation de graphiques 3D. Il a été introduit pour la première fois dans OS X 10.8 et est maintenant venu sur iOS 8. Avec Scene Kit, la création de visualisations 3D immersives et de jeux 3D occasionnels ne nécessite pas d’expertise dans OpenGL. En s’appuyant sur des concepts courants de graphique de scène, Scene Kit extrait les complexités d’OpenGL et OpenGL ES, ce qui facilite l’ajout de contenu 3D à une application. Toutefois, si vous êtes un expert OpenGL, Scene Kit a un excellent support pour lier directement avec OpenGL. Il comprend également de nombreuses fonctionnalités qui complètent des graphiques 3D, tels que la physique, et s’intègre très bien à plusieurs autres frameworks Apple, tels que Core Animation, Core Image et Sprite Kit.

Pour plus d’informations, consultez notre documentation SceneKit .

Sprite Kit

Sprite Kit, l’infrastructure de jeu 2D d’Apple, a quelques nouvelles fonctionnalités intéressantes dans iOS 8 et OS X Yosemite. Il s’agit notamment de l’intégration à Scene Kit, à la prise en charge du nuanceur, à l’éclairage, aux ombres, aux contraintes, à la génération normale de la carte et aux améliorations de la physique. En particulier, les nouvelles fonctionnalités physiques facilitent l’ajout d’effets réalistes à un jeu.

Pour plus d’informations, consultez notre documentation SpriteKit .

Autres modifications

Ainsi que les changements majeurs dans iOS 8 décrits ci-dessus, Apple a également mis à jour de nombreuses infrastructures existantes. Ces informations sont détaillées ci-dessous :

  • Image principale : Apple a développé son infrastructure de traitement d’images en ajoutant une meilleure prise en charge de la détection des régions rectangulaires et des codes QR à l’intérieur des images. Mike Bluestein explore ceci dans son billet de blog intitulé Détection d’images dans iOS 8

API déconseillées

Avec toutes les améliorations apportées dans iOS 8, un certain nombre d’API sont déconseillées. Certains d’entre eux sont détaillés ci-dessous.

  • UIApplication : les méthodes et les propriétés utilisées pour l’inscription des notifications à distance sont déconseillées. Il s’agit de registerForRemoteNotificationTypes et enabledRemoteNotificationTypes.

  • UIViewController : les caractéristiques et les classes de taille ont remplacé les méthodes et propriétés utilisées pour décrire l’orientation de l’interface. Pour plus d’informations sur l’utilisation de celles-ci, reportez-vous à la présentation des storyboards unifiés .

  • UISearchDisplayController : cela a été remplacé par UISearchController dans iOS8.

Résumé

Dans cet article, nous avons examiné certaines des nouvelles fonctionnalités introduites par Apple dans iOS 8.