Die Firmware-Version (und nicht die Geräteversion) von iOS-Geräten findet sich in deren Benutzeragenten-Zeichenfolge. Daher ist es schwierig, iPhones durch die entsprechenden Geräteversionen aufzugliedern. Nehmen Sie beispielsweise die iPhone 5-Benutzer-Zeichenfolge (mit iOS 6.1.3):

„Mozilla/5.0 (iPhone; CPU-iPhone OS 6_1_3, wie Mac OS X) AppleWebKit/536.26 (KHTML, wie Gecko) Version/6.0 Mobile/10B329 Safari/8536.25“

Vergleichen Sie es mit einem iPhone 4 (auch mit iOS 6.1.3):

„Mozilla/5.0 (iPhone; CPU-iPhone OS 6_1_3, wie Mac OS X) AppleWebKit/536.26 (KHTML, wie Gecko) Version/6.0 Mobile/10B329 Safari/8536.25“

Der einzige für JavaScript erkennbare Unterschied zwischen iPhone-Geräten ist derzeit die Bildschirmauflösung:

  • iPhone 3 und frühere Versionen: 480× 320
  • iPhone 4 und iPhone 4S: 960 × 640
  • iPhone 5: 1.136 × 640
  • iPhone 6: 1.334 × 750
  • iPhone 6 Plus: 1.920 × 1.080

Da Adobe den Benutzeragenten des Geräts zur Erstellung mobiler Berichte verwendet, ist es derzeit nicht möglich, die Bildschirmauflösung ohne zusätzliche Implementierung zu erhalten. Benutzen Sie das folgende Codefragment, um die Einschränkungen der Benutzeragenten-Zeichenfolgen von iOS-Geräten zu umgehen. Fügen Sie es in eine prop oder eVar ein:

if (navigator.userAgent.indexOf('iPhone') > -1)
{s.eVarXX = screen.width + "x" + screen.height;}

Dieses Codefragment erkennt zuerst, ob es sich bei dem Gerät um ein iPhone handelt. Ist dies der Fall, verwendet der Code JavaScript, um die Bildschirmauflösung abzurufen. Mit dieser Methode können Sie zumindest zwischen iPhone 5, iPhone 4 und vorherigen Generationen unterscheiden.

Dieses Werk unterliegt den Bedingungen der Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.  Twitter™- und Facebook-Beiträge fallen nicht unter die Bedingungen der Creative Commons-Lizenz.

Rechtliche Hinweise   |   Online-Datenschutzrichtlinie