Points de base
deviceproximity
fournit des informations sur la distance entre l'appareil et un objet à proximité; Ces événements peuvent être écoutés et réagi. userproximity
Les appareils mobiles ont également ouvert de nouveaux mondes pour les développeurs Web. Pour répondre aux besoins des appareils mobiles, une série d'API conçue spécifiquement pour eux est née.
Au cours des derniers mois, je vous ai présenté certaines API, telles que l'API de notifications Web et l'API de discours Web. Cet article introduira une API simple mais pratique: l'API à courte portée.
Introduction
L'API à plage à courte portée définit les événements qui fournissent des informations sur la distance entre l'appareil et l'objet, mesuré par le capteur à courte portée. Cette API faisait à l'origine partie de l'API du capteur et a ensuite été divisée en une API autonome. La spécification de l'API à proximité est considérée comme stable car elle répondait aux critères de recommandation des candidats W3C le 1er octobre 2013.Si vous avez utilisé un smartphone, vous devez avoir connu les fonctionnalités de cette API.
Par exemple: pensez au processus de votre dernier appel. Vous débloquez votre smartphone, entrez le numéro que vous souhaitez composer, puis cliquez sur le bouton "Appelez". Une fois que vous avez terminé, vous rapprochez votre téléphone de vos oreilles, puis quelque chose de magique se produit et l'écran s'éteint.
De nombreux smartphones ont cette fonctionnalité pour économiser la batterie, qui est alimentée par l'API à courte portée. Lorsque vous rapprochez votre appareil mobile de votre oreille, le capteur de proximité déclenche un événement écouté par votre smartphone, éteindre l'écran.
Nous avons d'autres cas d'utilisation intéressants sur le Web. Avez-vous déjà écouté de la musique à l'aide d'un service Web pendant la conduite, puis deviez suspendre la lecture?
À quel point est-il gênant de faire une pause manuellement le joueur? La réponse doit être "très gênante!". Avec cette API, les développeurs Web peuvent désormais ajouter une fonctionnalité que le lecteur s'arrête si l'objet (dans ce cas la main) est proche de l'appareil.
Maintenant que nous savons ce qu'est l'API à portée de gamme et ses cas d'utilisation, nous pouvons creuser dans les événements qu'il expose.
Événement
L'API à courte portée définit deux événements, que nous pouvons écouter et répondre en fonction de la proximité de l'objet. Le premier événement est deviceproximity
, qui fournit des informations sur la distance entre le périphérique hôte et les objets à proximité. Le deuxième événement est userproximity
, qui spécifie si l'appareil détecte un objet à proximité. Les deux événements sont licenciés sur l'objet window
, donc pour les écouter, nous devons y attacher un gestionnaire.
Ce qui suit est un exemple de la façon de fixer un gestionnaire d'événements deviceproximity
:
window.addEventListener('deviceproximity', function(event) { console.log('An object is ' + event.value + ' centimeters far away'); });
Le gestionnaire supplémentaire reçoit un objet comme premier paramètre contenant les informations dont nous avons besoin. L'objet passé par l'événement fournit trois propriétés: deviceproximity
, value
et min
. max
est un nombre qui indique la distance entre l'appareil et l'objet (en centimètres). Les propriétés value
et min
décrivent les distances minimales et maximales (en centimètres) que le capteur peut détecter. L'objet max
passé par l'événement expose l'attribut userproximity
. Il s'agit d'une valeur booléenne qui spécifie si l'objet est suffisamment proche de l'appareil (vrai) ou non (faux). Dans ce cas, "assez proche" signifie que l'objet se trouve dans la plage détectable d'un appareil particulier. near
Compatibilité du navigateur
À l'heure actuelle, la prise en charge des API à portée de gamme est très faible. Les seuls navigateurs qui le soutiennent sont Firefox (versions de bureau et mobiles, à commencer par la version 15). Cela est surprenant étant donné qu'il a répondu aux critères de recommandation des candidats W3C, mais c'est le cas.Parce que cette API n'est mise en œuvre que dans Firefox, il est crucial de savoir comment tester son soutien. Nous pouvons le faire en utilisant une méthode bien connue que vous pouvez avoir rencontrée lorsque vous traitez avec d'autres API. Cette méthode est la suivante:
if ('ondeviceproximity' in window) { // API supported. Don't get too close, I can feel you } else { // API not supported }
. À ce stade, nous savons ce qu'est l'API à portée de gamme et quels événements il expose. Pour terminer notre voyage, nous développerons une démo simple pour voir comment cela fonctionne réellement. userproximity
(Contenu ultérieur, tel que la démo et la section Conclusion, en raison des limites de l'espace, il est recommandé de vous référer au texte original pour la lecture et la compréhension. J'ai simplifié et réécrit le texte d'origine, en conservant le Informations et images de base.)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!