Das Portieren einer Anwendung oder eines Spiels von der iPhone- zur Netbook-Plattform, die zunehmend an Popularität gewinnt, ist spannend und abwechslungsreich. Sie können bestehenden Code mit wenig Aufwand anpassen und so eine größere Zielgruppe erreichen. Bevor Sie mit dem Portieren beginnen, stehen Ihnen zum Einstieg umfangreiche Informationen zur Verfügung, wie die ersten Schritte mit dem SDK für das Intel AppUp® Developer Program, Codebeispiele und vieles mehr.
Dieser Artikel richtet sich an all jene, die weniger Zeit haben oder einfach nur einen schnellen Sicherheitscheck machen wollen, bevor sie mit dem Portieren ihrer Anwendung zur Netbook-Plattform beginnen. Nehmen Sie einen virtuellen Kugelschreiber zur Hand und haken Sie die Schritte ab, die für den einfachen Umstieg zum AppUp® Shop erforderlich sind.
Vorbereiten der Entwicklungsumgebung
Zuerst müssen Sie eine geeignete Entwicklungsumgebung schaffen. Sie besteht aus einem Computer mit folgenden Komponenten:
- Windows XP oder Windows 7
- Visual Studio 2008
- Intel AppUp® SDK
- Virtualisierungslösung / Sauberes virtuelles BS-Image * optional
Die oben angeführten Betriebssysteme werden zurzeit von Intel für die Nutzung des AppUp® Client unterstützt. Da Sie mit dem Entwicklungssystem lokale Tests durchführen werden, bevor Sie Einladungen zum Betatest verschicken (eine praktische Funktion des Intel AppUp Developer Program), sollten Sie eines dieser Betriebssysteme ausführen.
Visual Studio 2008 ist zurzeit die bevorzugte IDE für die Entwicklung von Anwendungen für Geräte mit Intel® Atom™ Prozessoren und wird von Intel unterstützt (Visual Studio 2005 funktioniert nicht). Sollten Sie diese Software nicht zur Verfügung haben, können Sie eine 90-Tage-Testversion von der Microsoft-Website herunterladen. Die 90-Tage-Testversion lässt sich nach dem Kauf einer Lizenz ohne Deinstallation in eine Vollversion konvertieren.
Vergewissern Sie sich, dass Sie die neueste Version des SDK für das Intel AppUp Developer Program heruntergeladen haben. In den Validierungsrichtlinien ist festgelegt, dass Sie für die erfolgreiche Validierung Ihrer Anwendung die neueste Version des SDK für das Intel AppUp Developer Program verwenden müssen. Außerdem verbessert Intel ständig die verfügbaren Funktionen, und wer möchte schon auf neue und verbesserte Funktionalität verzichten? Wenn Sie das SDK bereits vor einigen Wochen heruntergeladen haben, sehen Sie nach, ob eine neue Version erhältlich ist, bevor Sie mit Ihrem Projekt beginnen.
Beachten Sie, dass für die Entwicklungsumgebung kein Netbook erforderlich ist, da das SDK für das Intel AppUp Developer Program einen Emulator für Intel® Atom™ Prozessoren (ATDS) enthält. Es ist zwar von Vorteil, wenn Sie Ihre Anwendung auf einem Netbook testen, allerdings kann die Entwicklung auch ohne Netbook erfolgen. Sollten Sie zu Testzwecken den Kauf eines Netbooks in Betracht ziehen, können Sie hierfür ein beliebiges Modell eines beliebigen Herstellers wählen, solange das Netbook mit einem Intel® Atom™ Prozessor ausgestattet ist.
Viele Entwickler verwenden zu Testzwecken eine virtualisierte Maschine. Der Vorteil dieser Lösung liegt darin, dass die Umgebung für nachfolgende Tests zurückgesetzt werden kann. Dieser Ansatz ermöglicht auch Tests mit mehreren Betriebssystemen und mit eingeschränkter Hardware, um die Leistung der Anwendung zu bewerten.
Überprüfen und Schützen von Quellcode
Dies mag offensichtlich erscheinen, aber viele iPhone-Entwickler haben bereits unangenehme Überraschungen erlebt, wenn ihnen klar wurde, dass Entwickler Y die neueste Version der Klasse X nie in das Quellcode-Repository eingecheckt hat. Vergewissern Sie sich, dass Ihr Quellcode auf dem neuesten Stand ist.
Wenn Sie kein Code-Repository haben, empfehle ich Ihnen dringend, vor dem Portieren ein Repository einzurichten. Ein Rollback zu einer vorhergehenden Version könnte von entscheidender Bedeutung sein, insbesondere wenn mehrere Entwickler an der Portierung beteiligt sind.
Respektieren Sie die Lizenzen anderer Entwickler
So wie wir erwarten, dass Benutzer die Bedingungen unserer Lizenzvereinbarungen einhalten, sollten wir die Lizenzen für Bibliotheken oder Komponenten von Drittherstellen, die wir in unserer App verwenden, respektieren. In manchen Fällen gibt es für iPhone-spezifische Bibliotheken eine PC-Entsprechung, in anderen Fällen nutzen Sie möglicherweise eine neue Bibliothek. Sie sollten in jedem Fall jede Lizenz sorgfältig lesen, um sicher zu sein, dass Sie alle Bedingungen erfüllen.
Wenn Sie Fragen zu einer Lizenz haben, zögern Sie nicht nachzuhaken. Eine kurze E-Mail oder ein Telefongespräch mit dem Hersteller der Bibliothek oder Komponente wird Unklarheiten beseitigen und potenzielle Strafen verhindern.
Vergessen Sie nicht, dass es auch im Open-Source-Bereich Lizenzen gibt, deren Bedingungen einzuhalten sind. Es gibt Dutzende von Open-Source-Lizenzformaten, und jedes hat eigene Einschränkungen und/oder Bedingungen. Einige setzen voraus, dass der Urheber in der kompilierten Anwendung eine Referenz bereitstellt. Wenn Sie Bedingungen inakzeptabel finden, suchen Sie nach einer Alternativlösung, die die benötigte Funktionalität bietet.
Lösen Sie Hardware-Probleme
Dieser Schritt ist für das Portierpotenzial Ihrer iPhone-Anwendungen von höchster Bedeutung. Sehen Sie sich objektiv an, welche Hardware Ihre Anwendung auf dem iPhone nutzt und erstellen Sie eventuell eine kurze Liste. Multitouch, Kamera, Beschleunigungsmesser, GPS und Bluetooth sind nur einige Komponenten. Gibt es für Netbooks dieselbe oder entsprechende Hardware? Die Wahrscheinlichkeit ist groß, dass Komponenten für verschiedene Formate verfügbar sind.
So könnte zum Beispiel statt GPS-Hardware ein Geolokalisierungsdienst verwendet werden. Wenn dies möglich ist, brauchen Sie eine Komponente eines anderen Herstellers? Wie wirken sich nicht vorhandene Beschleunigungsmesser auf Ihre Anwendung aus? Diese Fragen sollten Sie sich bereits zu Beginn stellen, nicht erst im Laufe des Entwicklungsprozesses.
Die meisten (wenn nicht sogar alle) potenziellen Schwächen lassen sich auf die eine oder andere Art lösen. Eine hervorragende Informationsquelle für Fragen dieser Art ist die Entwickler-Community des Intel AppUp Developer Program. Möglicherweise finden Sie die Lösung für Ihre Problemstellung mit einer schnellen Suche im Entwicklerforum. Wenn nicht, posten Sie Ihre Frage, um herauszufinden, wie andere in ähnlichen Situationen vorgegangen sind.
Nutzen Sie die Vorteile
Im Gegensatz zum Portieren zu mobilen Geräten bietet das Portieren von mobilen Geräten einzigartige Möglichkeiten zur Nutzung der umfangreichen Ressourcen, die für die Netbook-Plattform verfügbar sind. Machen Sie diese einfache Übung:
Holen Sie Ihr iPhone und Ihr Netbook (als Ersatz funktioniert auch ein Notebook). Führen Sie Ihre iPhone-Anwendung aus und legen Sie das iPhone auf dem Schreibtisch neben Ihrem Netbook ab. Fragen Sie sich, ob eine direkte Portierung ausreichend ist. Im ersten Moment werden einige von uns diese Frage mit „Ja“ beantworten. Wenn dies auch auf Sie zutrifft, gehen Sie ein wenig tiefer und stellen Sie sich die Frage, welche Funktionen Ihre iPhone-Anwendung mit mehr Platz besser ausführen könnte oder ermitteln Sie andere Vorzüge, die sich bei einer Portierung zur Netbook-Plattform ergeben.
Die meisten Entwickler werden einiges finden, das sie in ihrer Anwendung ändern würden, wenn sie die Gelegenheit dazu hätten. Nun, hier ist Ihre Chance! Während Sie die Benutzeroberfläche entwickeln und mit dem Portieren Ihrer Anwendung beginnen, können Sie sich entscheiden, weitere außergewöhnliche Netbook-Funktionen zu nutzen. Natürlich sollten Sie eine Kosten-Nutzen-Analyse aufstellen und ermitteln, wie viel Zeit Sie im Vergleich zu einer direkten Portierung investieren wollen. Mit wenig Einsatz können Sie oft viel erreichen. Zum Beispiel könnte eine schnelle Überarbeitung der Benutzeroberfläche aufgrund der verbesserten Nutzungseigenschaften das Interesse zahlreicher Anwender auf den AppUp Shop lenken.
Halten Sie Ihren Code auf dem neuesten Stand
Heute konzipieren viele Entwickler ihre Anwendungen oder Spiele für mehrere Plattformen. Während der Portierung könnte sich die iPhone-Version ändern. Achten Sie darauf, dass alle Teammitglieder über Änderungen informiert sind. So erzielen Sie mit wenig Aufwand eine erfolgreiche Portierung.
Eine Option ist das kurzzeitige Einfrieren des Codes. Hier wird für eine festgelegte Anzahl von Wochen keine neue Funktionalität hinzugefügt. Ist dies nicht möglich (was oft der Fall ist), nutzen Sie das Code-Repository, damit Sie bei Änderungen immer auf dem neuesten Stand sind. Ebenso helfen gut kommentierte Beiträge aller am iPhone-Projekt Beteiligten denjenigen, die die Anwendung zur Netbook-Plattform portieren.
Wo erhalte ich Hilfe?
Hin und wieder können Portierungsprobleme zeitraubend und frustrierend sein. Sie können hier Abhilfe schaffen, wenn Sie wissen, wo Sie Unterstützung erhalten. Das Intel Entwicklerprogramm bietet umfangreiche nützliche Ressourcen. Neben der Dokumentation, die das SDK für das Intel AppUp Developer Program umfasst, gibt es weitere Ressourcen, die Ihnen beim Portieren helfen:
- Artikel zum Portieren – http://software.intel.com/de-de/appup/porting
- Entwicklerforen – http://software.intel.com/de-de/forums
- E-Mail-Support – http://software.intel.com/de-de/contact