Maison > interface Web > js tutoriel > Comment puis-je détecter de manière fiable les appareils iOS et leurs versions dans les applications Web ?

Comment puis-je détecter de manière fiable les appareils iOS et leurs versions dans les applications Web ?

Susan Sarandon
Libérer: 2024-12-05 04:22:17
original
742 Les gens l'ont consulté

How Can I Reliably Detect iOS Devices and Their Versions in Web Applications?

Détection des appareils iOS

Lors du développement d'applications Web, il peut être utile de détecter le système d'exploitation d'un appareil. En particulier, les appareils iOS présentent des caractéristiques uniques qui peuvent nécessiter des manipulations spécifiques. Voici comment y parvenir :

Renifleur d'agent utilisateur

Une approche courante est le reniflage d'agent utilisateur. Cependant, cette méthode est moins fiable en raison du potentiel de manipulation de l'utilisateur ou de l'extension. Néanmoins, voici un exemple :

var iOS = !window.MSStream && /iPad|iPhone|iPod/.test(navigator.userAgent);
Copier après la connexion

Notez que cette méthode peut ne pas détecter les iPad exécutant iOS 13 en raison de modifications dans la chaîne de l'agent utilisateur.

Détection de plate-forme

Une approche plus robuste consiste à vérifier la chaîne de la plateforme :

function iOS() {
  return [
    'iPad Simulator',
    'iPhone Simulator',
    'iPod Simulator',
    'iPad',
    'iPhone',
    'iPod'
  ].includes(navigator.platform)
  || (navigator.userAgent.includes("Mac") && "ontouchend" in document);
}
Copier après la connexion

Cette méthode également distingue les iPad des autres appareils iOS, y compris iPadOS 13.

Détection de la version iOS

Bien que l'analyse de l'agent utilisateur puisse fournir la version iOS, une approche plus fiable est l'inférence de fonctionnalités. Voici un exemple :

function iOSversion() {
  if (iOS) {
    if (window.indexedDB) { return 'iOS 8 and up'; }
    if (window.SpeechSynthesisUtterance) { return 'iOS 7'; }
    if (window.webkitAudioContext) { return 'iOS 6'; }
    if (window.matchMedia) { return 'iOS 5'; }
    if (window.history && 'pushState' in window.history) { return 'iOS 4'; }
    return 'iOS 3 or earlier';
  }
  return 'Not an iOS device';
}
Copier après la connexion

Conclusion

Ces techniques vous permettent de détecter efficacement les appareils iOS et de déterminer leur version, vous permettant ainsi de personnaliser le comportement de votre application Web en conséquence.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal