Mittwoch, 18. Juli 2012

Webseiten für mobile und nichtmobile Surfer per Browserkennung steuern

Es gibt verschiedene Herangehensweisen, dem Besucher die passende Ansicht einer Webseite für sein Endgerät zu liefern.

Wer dynamische (zur Laufzeit auf dem Server generierte) Seiten anzeigt, kann auf die Browserkennung des Surfers zurückgreifen und anhand der folgenden Suchmuster sehr gut feststellen, ob der Besucher mobil auf die Seiten zugreift.

Nachfolgend die wichtigsten mobilen Browserkennungen auf den entscheidenden abgleichbaren Teil reduziert:

Android
BlackBerry
iPad
iPhone
iPod
Kindle
Opera Mobi
PlayBook
Windows Phone

Die beiden nächsten Kennungen ergänzen die obige Liste, sollten aber bei einem Array-Vergleich zum Schluss abgefragt werden:
 Bada
Mobile

Ein vereinfachter Vergleich über Reguläre Ausdrücke (RegEx) könnte zum Beispiel so aussehen:

$suchmuster = "iPhone";

if ( $ENV{'HTTP_USER_AGENT'} =~ m/$suchmuster/i ) {
     print "Ja, Sie surfen mobil!";
}

Bei " Bada" sollte das vorangestellte Leerzeichen mit abgefragt werden.

Falls Sie Geolocation-Anwendungen programmieren, ist noch zu bemerken, dass die veraltete Google Maps JavaScript API v2 nur bada 2.x unterstützt. Für das SAMSUNG Wave 525 zum Beispiel ist seitens des Herstellers kein Upgrade auf bada 2.x vorgesehen. Wenn Sie auf die aktuelle Google Maps JavaScript API v3 umstellen, klappt es auch mit bada 1.x.