
Die Seite Hundeurlaub.de gehört mit Sicherheit zu den erfolgreichsten Portalen, die wir jemals auf Basis der nicht mehr erhältlichen Software easyTrade für einen Kunden realisieren durften und auch wenn das Projekt aus technischer Sicht schon etwas in die Jahre gekommen ist, wachsen die Besucherzahlen noch immer massiv an.
Dieser Umstand ist für den Betreiber natürlich grund genug um über eine Erweiterung der angebotenen Leistungen nachzudenken und so wurde letztendlich nach einer intensiven Beratungsphase der Entschluß gefällt, die auf Hundeurlaub eingetragenen Ferienhäuser- und Wohnungen als zusätzlichen Service für alle Hundebesitzer in der kommenden iPhone App der iak! GmbH zu integrieren.
Nur wie realisiert man einen sinnvollen Datenaustausch zwischen einem 10 Jahre alten PHP-Script und einer hochmodernen mobilen Plattform wie dem iPhone?
Vor genau dieser Herausforderung stand unser Team in den letzten beiden Wochen und wie uns der folgende Lösungsweg zeigt, lassen sich auch ältere Projekte ohne API relativ einfach mit der mobilen Welt dort draussen vernetzen.
Was haben wir also gemacht?
Zunächst einmal standen wir vor dem Problem, dass die vorhandene Basis bei der Eintragung die GEO-Daten einer Ferienwohnung nicht ermittelt und daher musste im ersten Schritt diese Lücke natürlich gefüllt werden. Zu diesem Zweck haben wir für den Kunden zunächst ein kleines PHP-Script entwickelt, dass die fehlenden GEO-Angaben über die Google Maps API mit der vorhandenen Datenbank abgleicht.
Zwar hätten wir die notwendigen Längen- und Breitengrade auch direkt über einen ReverseGeoCoder auf dem iPhone ermitteln können, aber das bedeutet letztendlich eine leicht höhere Ladezeit und somit haben wir uns im Sinne der Performance entschieden.
Im zweiten Schritt konnten wir uns dann darum kümmern, die Daten aus dem Verzeichnis für die Weiterverarbeitung auf dem iPhone aufzubereiten. Diese Aufgabe übernahm ebenfalls ein spezielles PHP-Script, dass neben der Konvertierung der Daten auch den Export der Einträge in das Apple PLIST Format übernommen hat.
Diese PLIST Datei, die aus technischer Sicht nichts anderes ist als ein einfaches XML-Schema, dass nach einer von Apple vorgegebenen Struktur aufgebaut ist, kann nun direkt als Bestandteil der App an den Nutzer ausgeliefert werden. Somit befinden sich alle Einträge aus dem Verzeichnis direkt auf dem Smartphone des Anwenders und wir brauchen die Daten nicht jedesmal neu aus dem Netz laden.
Kritker werden sich jetzt natürlich fragen, wie neue Einträge im Verzeichnis denn nun auf das iPhone gelangen, aber auch dafür ist jederzeit gesorgt, denn zusätzlich zur Speicherung der PLIST auf dem Gerät, hinterlegen wir im AppDelegate eine entsprechende Update-Methode, die in regelmäßigen Abständen den Exporter automatisch kontaktiert und so die neuen Daten auf das Smartphone lädt.
Ich denke, dass dieses kleine Beispiel sehr schön zeigt, dass auch ältere Seiten in Zeiten des mobilen Internets noch lange nicht “zum alten Eisen” gehören und auch ohne moderne Schnittstelle bzw. API lassen sich viele Daten auf iPhone & Co. darstellen.