Eine question wurde über den Benutzer-Agent für iPhone 4 und den Benutzer-Agent iOS 5.0 bei SO gefragt.Erkennung von iPhone 5 und einem darunter befindlichen iOS-Gerät
Ich verwende Folgendes, um verschiedene mobile Geräte, Ansichtsfenster und Bildschirm zu erkennen.
Ich möchte in der Lage sein, zwischen dem iPhone 5 und allen anderen iOS-Geräten zu unterscheiden. Soweit ich weiß, würde die Zeile, die ich benutze, um den iOS 5.0 User Agent var iPhone5
zu finden, auch auf jedes iOS Gerät mit iOS 5.0 angewendet werden, also technisch ist es falsch.
var pixelRatio = window.devicePixelRatio || 1;
var viewport = {
width: window.innerWidth,
height: window.innerHeight
};
var screen = {
width: window.screen.availWidth * pixelRatio,
height: window.screen.availHeight * pixelRatio
};
var iPhone = /iPhone/i.test(navigator.userAgent);
var iPhone4 = (iPhone && pixelRatio == 2);
var iPhone5 = /iPhone OS 5_0/i.test(navigator.userAgent); // ?
var iPad = /iPad/i.test(navigator.userAgent);
var android = /android/i.test(navigator.userAgent);
var webos = /hpwos/i.test(navigator.userAgent);
var iOS = iPhone || iPad;
var mobile = iOS || android || webos;
window.devicePixelRatio
ist das Verhältnis zwischen den physikalischen Pixeln und geräteunabhängigen Pixel (dips) auf dem Gerät. window.devicePixelRatio
= physikalische Pixel/Dips.
Weitere Informationen here.
@nhahtdh: Nun, dass der Benutzer 5.0 Agent iOS ist nicht das iPhone 5. Denken Sie daran, iOS 5.0 5 auf jedem iOS-Gerät mit dem iPhone laufen kann, jedoch würde ich gerne zum Beispiel zwischen einem iPhone 4 und einem iPhone 5 unterscheiden. – fuzz
@nhahtdh: Warum würdest du kommentieren und dann schließen? Geben Sie auch einen Grund an? – fuzz
Es war eine reflexartige Reaktion, ohne genau zu lesen, wonach Sie fragen. – nhahtdh