Les développeurs iOS natifs ne sont pas les seuls à être enthousiasmés par le développement pour iOS 5. Une nouvelle version de Safari Mobile a été publiée parallèlement au dernier système d'exploitation. Les développeurs Web pour mobiles disposent désormais de nombreuses nouvelles fonctionnalités à expérimenter. . Soyez au courant des changements dans cet article!
À chaque nouvelle version iOS, Apple a réalisé un travail phénoménal de mise à jour de la communauté de développement native sur les modifications apportées au SDK. Ils ont publié un aperçu général des modifications, des notes de publication officielles et même des diffs complètes d'API..
Si seulement les développeurs Web pouvaient être aussi chanceux! Les informations sur les modifications apportées à Mobile Safari ont été beaucoup plus difficiles à trouver. Pour être juste, certaines informations ont été officiellement publiées. Vous pouvez consulter la mise à jour grand public de Safari 5, une mise à jour de haut niveau pour les développeurs et une note de support technique au nom obscur, HT4922. Toutefois, aucun de ces documents ne traite spécifiquement des modifications relatives à iOS et aucun n'entre dans le niveau de profondeur technique qui serait utile aux développeurs (si vous connaissez un document supplémentaire ne figurant pas dans cette liste, veuillez laisser un lien dans les commentaires). Ce manque d'information est surprenant, ne serait-ce que pour une seule raison: beaucoup de choses ont changé dans Safari 5.1 sur iOS 5.
Le but de cet article est de fournir un journal des modifications aussi complet que possible pour Mobile Safari 5.0 à 5.1. J'ai essayé de le faire en rendant simplement compte de mes propres expériences entre des appareils iOS exécutant chaque version. Mes tests jusqu’à présent sont simples: je viens de charger HTML5Test.com sur chaque version de Safari et de prendre note des modifications..
Selon le test HTML 5, Mobile Safari 5.1 a enregistré une augmentation de 86 points de son score par rapport à Mobile Safari 5.0..
Bien entendu, comme son nom l'indique, le site de test teste uniquement les modifications apportées à HTML 5 et aux spécifications associées. Il affiche également clairement un avis de non-responsabilité indiquant que toutes les nouvelles modifications HTML 5 ne sont pas testées (après tout, la spécification HTML 5 est toujours en cours d’écriture!) Et que les résultats peuvent ne pas être tout à fait exacts. Néanmoins, cela semble être une méthode efficace pour obtenir un aperçu rapide de ce qui a changé entre les versions de navigateur, et je suis heureux de pouvoir partager mes résultats de ce test avec la communauté..
Les résultats présentés dans cet article ont été obtenus à l'aide de tests effectués avec un iPhone 3GS sous iOS 4.3.5 avec Safari 5.0 et un iPhone 4 sous iOS 5.0 avec Safari 5.1. Ces résultats ont ensuite été confirmés sur un iPad sous iOS 4.3.5 avec Safari 5.0 et sur un iPad 2 sous iOS 5.0 avec Safari 5.1. J'étais heureux de constater que les versions iPhone et iPad de Safari testaient le même.
L'agent utilisateur complet affiché sur l'iPhone 3GS:
Mozilla / 5.0 (iPhone; U; CPU iPhone OS 4_3_5 comme Mac OS X; fr-fr) AppleWebKit / 533.17.9 (KHTML comme Gecko) Version / 5.0.2 Mobile / 8L1 Safari / 6533.18.5
L'agent utilisateur complet affiché sur l'iPad de première génération:
Mozilla / 5.0 (iPad; U; CPU iPhone OS 4_3_5 comme Mac OS X; en-us) AppleWebKit / 533.17.9 (KHTML comme Gecko) Version / 5.0.2 Mobile / 8L1 Safari / 6533.18.5
L'agent utilisateur complet affiché sur l'iPhone 4:
Mozilla / 5.0 (iPhone; CPU iPhone OS 5_0 comme Mac OS X) AppleWebKit / 534.46 (KHTML comme Gecko) Version / 5.1 Mobile / 9A334 Safari / 7534.48.3
L'agent utilisateur complet affiché sur l'iPad 2:
Mozilla / 5.0 (iPad; CPU OS 5_0 comme Mac OS X) AppleWebKit / 534.46 (KHTML comme Gecko) Version / 5.1 Mobile / 9A334 Safari / 7534.48.3
Dix points supplémentaires ont été attribués pour l’inclusion des constructions HTML 5 tokenizer et HTML 5. Les détails techniques de ce test dépassent le cadre de cet article, mais je peux dire que la spécification HTML 5 définit une étape de création de jetons suivie d'une étape de construction d'arborescence dans l'analyse de documents HTML 5. Cette augmentation ponctuelle implique que Safari 5.1 adhère à ce processus alors que la version 5.0 ne l’a pas été..
En plus des 10 points gagnés dans cette catégorie et ajoutés au total, Safari 5.1 a également marqué un bonus de 2 points supplémentaires pour l'ajout de SVG et MathML en ligne. Gardez un oeil sur ces deux technologies!
Pas de changement. Cela a été entièrement pris en charge pendant un certain temps maintenant.
Aucun changement n'a été signalé dans la catégorie vidéo, mais Mobile Safari n'obtient toujours pas un score parfait. Que manque-t-il? Prise en charge des formats Ogg Theora et WebM ainsi que des sous-titres.
Aucun changement. Mobile Safari a soutenu le l'audio
élément depuis un certain temps, mais il ne supporte toujours pas WebM et Ogg Vorbis (cela n'arrivera probablement pas de si tôt).
Une augmentation significative de 8 points a été obtenue pour cette section.
Les nouveaux éléments incluent:
Les autres améliorations dans cette catégorie comprennent:
Cette augmentation de 39 points dans la catégorie des formulaires compte parmi les mises à jour les plus intéressantes!
De nombreux changements mis en œuvre s’appliquent à la type
attribut de l'élément d'entrée. Les nouvelles valeurs d'attribut type qui ont maintenant une incidence sur les contrôles de formulaire affichés par l'interface utilisateur du navigateur sont les suivantes:
C'est une grande victoire pour les développeurs Web qui ciblent iOS. Mobile Safari affichera maintenant un UIPicker
avec les divers composants de temps lorsque vous définissez l'attribut type sur l'une des valeurs associées à la date / heure, et UISlider
est maintenant affiché pour la valeur de la plage. Les applications Web deviennent de plus en plus natives.
La prise en charge de ces mises à jour supplémentaires est également signalée:
sélectionner
élémentsParmi les autres modifications apportées dans cette section, citons l’ajout du :invalide
sélecteur, le forme
, formAction
, formEnctype
, formMethod
, et formTarget
propriétés sur les champs, et la contrôle
propriété sur les étiquettes.
Les points de cette catégorie ont été attribués pour l'amélioration des attributs, des propriétés et des méthodes d'édition HTML. Plus précisément, les attributs contentEditable et designMode, la propriété isContentEditable et les méthodes execCommand, queryCommandEnabled, queryCommandIndeterm, queryCommandState, queryCommandSupported et queryCommandValue.
Pas de changement. L'historique de la session était déjà disponible.
Aucun changement et aucun support pour le moment. Pour en savoir plus sur ce qui nous manque, consultez cette référence..
Curieusement, le site de test rapporte en fait une perte de 4 points dans cette section, les gestionnaires de schémas personnalisés et les gestionnaires de contenu personnalisés étant répertoriés comme n'étant plus pris en charge..
Pas de changement. Nous attendons toujours le support transparent d'iFrame.
Aucun changement ici car le support de la géolocalisation est disponible depuis un certain temps.
Remarque: la géolocalisation ne fait pas partie de la spécification officielle HTML 5, mais est souvent associée à des sites Web HTML 5. Lire la spécification officielle de la géolocalisation.
Cette version nous rapproche encore plus du support WebGL avec l’ajout du support DataView.
Remarque: WebGL ne fait pas partie de la spécification officielle HTML 5 mais est souvent associé à des sites Web HTML 5. Lisez à propos de WebGL ici.
Aucun changement ici. Les versions 5.0 et 5.1 prennent en charge la messagerie multi-documents et les événements envoyés par le serveur..
Aucune modification à cet égard, ce qui est un gros point de frustration pour de nombreux développeurs Web qui souhaitent pouvoir accéder à l'API FileReader et à l'API FileSystem..
Remarque: ceci n'est pas une partie officielle de la spécification HTML 5.
Aucun changement. La prise en charge d'IndexedDB est toujours en attente, mais au moins le stockage local existe depuis un certain temps..
Remarque: il ne s’agit pas d’une partie officielle de la spécification HTML 5, mais d’une technologie étroitement liée souvent discutée avec les sites Web HTML 5. Lire le brouillon de travail sur le stockage Web complet.
Le test HTML indique une augmentation de 15 points avec prise en charge des travailleurs Web et partagés..
Remarque: il ne s’agit pas d’une partie officielle de la spécification HTML 5, mais d’une technologie étroitement liée souvent discutée avec les sites Web HTML 5. Lire le brouillon complet du travailleur Web.
Aucun changement ici, malheureusement. La grande fonctionnalité de nombreux développeurs Web de cette catégorie est l'accès à la caméra de l'appareil..
Remarque: cela ne fait pas partie de la spécification officielle HTML 5.
Aucun indice de notifications Web avec cette version.
Remarque: cela ne fait pas partie de la spécification officielle HTML 5. Lire le brouillon complet des notifications Web.
Les points pour la sélection de texte et le défilement dans l'affichage avaient déjà été attribués avec Safari 5.0.
Le site Web HTML 5 Test vérifie un large éventail de problèmes de prise en charge de navigateur, mais il y a beaucoup de choses auxquelles il ne prête pas attention. Les exemples incluent les corrections de bugs, les améliorations de performances et les ajustements CSS ou JavaScript. Il y avait un bon nombre de ces types de mises à jour dans cette version ainsi.
Si vous souhaitez en savoir plus sur d’autres améliorations de Safari 5.1, je vous recommande vivement de lire ce billet de David Calhoun sur le blog..
Parmi les modifications supplémentaires déjà signalées sur le Web, citons:
Cette propriété CSS fonctionne désormais comme le prévoient la plupart des développeurs Web. Pour le voir en action, regardez cette vidéo YouTube du post de David cité ci-dessus:
Comme ci-dessus. Ce paramètre a été modifié pour répondre aux attentes des développeurs. Lisez le message de David pour obtenir tous les détails et regardez cette vidéo de YouTube qu'il avait initialement publiée pour afficher le nouveau comportement:
Les résultats ci-dessus sont les résultats que j'ai pu trouver à partir de HTML 5 Test et de plusieurs autres ressources sur le Web. Si vous avez connaissance d'autres changements importants ou intéressants que je n'ai pas abordés ici, faites-le-moi savoir dans les commentaires. De même, si vous trouvez des erreurs, n'hésitez pas à corriger ce message..
Comme vous pouvez le constater ci-dessus, iOS 5 a apporté un nombre considérable de modifications et d’améliorations à Mobile Safari. Mobiletuts + couvrira certaines de ces nouvelles fonctionnalités ainsi que de nombreux autres sujets liés au développement du Web mobile dans les prochains articles. Dites-nous quel type de contenu vous souhaitez voir couvert en laissant un commentaire sur ce post. Si vous souhaitez une amélioration plus détaillée de Safari 5.1, indiquez-le ci-dessous.!