J'utilise le code Javascript
if( (Android|webOS|iPhone|iPad|iPod|BlackBerry).test(navigator.userAgent) ) {}
pour la détection des appareils mobiles, mais Chrome sur iOS n’est pas détecté. Y a-t-il un moyen de le détecter? Merci.
Selon Google Developers , la chaîne UA ressemble à ceci:
Mozilla/5.0 (iPhone; U; CPU iPhone OS 5_1_1 like Mac OS X; en) AppleWebKit/534.46.0 (KHTML, like Gecko) CriOS/19.0.1084.60 Mobile/9B206 Safari/7534.48.3
Où il diffère de iOS Safari en ce sens qu'il indique CriOS
au lieu de Version
. Donc ça:
if(navigator.userAgent.match('CriOS'))
Devrait le faire.
si vous voulez une réponse simple vrai/faux:
if(/CriOS/i.test(navigator.userAgent) &&
/iphone|iPod|ipad/i.test(navigator.userAgent)){
return true;
}else{
return false;
}
vous pouvez utiliser la solution en nuage gratuite de 51Degrees pour obtenir ces informations. Dans le cadre du service cloud gratuit, vous avez accès à la propriété BrowserName, qui inclut Chrome for iOs.
Vous trouverez ci-dessous un exemple de code que vous pouvez utiliser. Vous pouvez obtenir la clé gratuite en parcourant la page du magasin ici https://51degrees.com/products/store/rvdsfcatid/cloud-device-detection-7
<!DOCTYPE html>
<html>
<body>
<p id="id01"></p>
<script>
var xmlhttp = new XMLHttpRequest();
<!-- Insert Cloud key here. -->
var key = "Licence Key"
<!-- Receives UserAgent from clients connection. -->
var ua = window.navigator.userAgent;
<!-- Lists the properties required. -->
var url = ("https://cloud.51degrees.com/api/v1/"+key+"/match?user-agent="+ua+"&Values=\
BrowserName");
<!-- Parses the JSON object from our cloud server and returns values. -->
xmlhttp.onreadystatechange = function(){
if ( xmlhttp.readyState == 4 && xmlhttp.status == 200){
var match = JSON.parse(xmlhttp.responseText);
var text = ""
document.getElementById("id01").innerHTML=\
"UserAgent:"+ua+"</br>"+
"BrowserName:"+match.Values.BrowserName;
}
}
<!-- Sends request to server. -->
xmlhttp.open("GET", url, true);
xmlhttp.send();
</script>
</body>
</html>
Pour plus d'informations sur l'utilisation de l'API JavaScript Cloud, vous pouvez consulter d'autres didacticiels ici https://51degrees.com/Developers/Documentation/APIs/Cloud-API/JavaScript-Cloud
Divulgation: Je travaille à 51Degrees