der Ende des Internets

I say: “Hello mobile World!”

by Maddin on Feb.01, 2009, under Technik

Dem Einen oder Anderen habe ich es breits erzählt, nun gibt es auch den ersten “offiziellen” Bericht zu meiner neuen Freizeitspielerei.

Windows Mobile Logo

Windows Mobile Logo

Ich bin seit Mitte September im Besitz eines T-Mobile MDA Compact IV (HTC Touch Diamond), welches bekanntlich Windows Mobile 6.1 als Betriebssystem verwendet. Damit bietet das Smart Phone (bitte nehmt es mir nicht übel, aber ich sag trotzdem Handy) natürlich viel mehr Möglichkeiten, um eigene Programme für das Handy zu schreiben, als es ein normales Handy bot. Dort musste man auf JavaME zurückgreifen. Windows Mobile 6 bietet dagegen ein eigenes auf .NET basierendes SDK und vereinfacht so die Software Entwicklung.

Zudem fand ich Berichte, dass bereits findige Entwickler, die aus der HTCSensorSDK.dll die entsprechende API über Reverse Engineering verfügbar gemacht haben. Der Gedanke, mit diesen Möglichkeiten mal zumindest etwas herumzuspielen, sodass vielleicht auch später brauchbare Dinge dabei herauskommen, war schnell geboren. Allerdings hinderte dann diverse zeitliche und technische Probleme mich daran, diesen Gedanken umzusetzen.

Gestern habe ich nun endlich mit der Umsetzung begonnen und das Windows Mobile 6 Professional SDK installiert. Als Entwicklungsumgebung nutze ich Microsoft Visual Studio 2008 und schreibe meine Programme in C#. Das SDK bringt eine umfangreiche Dokumentation und Beispielprogramme mit, um jedem einen guten Einstieg zu ermöglichen. Grundkenntnisse der Programmierung in C# sind natürlich empfehlenswert. Ein für das Debugging der geschriebenen Software unerlässliches Feature ist der Windows Mobile 6 Device Emulator.

Windows Mobile 6 Emulator

Windows Mobile 6 Emulator

Auf dieser Emulation des tatsächlichen Smartphones kann man die geschriebene Software deployen und ausführen. In Verbindung mit Visual Studio 2008 ist auch das gewohnte Step-by-Step Debugging möglich, sodass sich Fehler einfach identifizieren lassen sollten. Zudem verhindert der Emulator, dass man eine fehlerhafte Software auf seinem Handy ausführt und so gegebenfalls Daten vernichtet oder andere Schäden am System verursacht werden.Für meinen ersten Versuch ein lauffähiges Programm zu schreiben, habe ich mich erstmal vom oben genannten SensorSDK ferngehalten. Erstmal sollen ja die Basics stehen.

Jeder, der schon einmal ein Lehrbuch zum Erlernen einer neuen Programmiersprache in der Hand gehabt hat, weiß, wie das erste Programm in aller Regel ausschaut: “Hello World!”. Da für mich die Sprache C# an sich nicht neu ist, sondern nur die Umgebung, auf der die Software läuft, war ich so frei, diesen Standardsatz in “Hello mobile World!” zu modifizieren. Ich wollte es aber auch nicht bei einer banalen Ausgabe belassen, sondern ein ganz klein wenig Funktion sollte schon da sein. Deshalb wird bei Start des Programms neben der Weltbegrüßung noch “Application started at <date/time>” ausgegeben. Am unteren Bildschirmrand erscheinen 2 Menüeinträge: “Change Color”, “Quit”. Während ich sicher niemandem erzählen muss, welchen Zweck der Quit-Button erfüllt, ist auch der andere Button selbsterklärend. Bei Betätigung wird die unten dargestellte Farbänderung vorgenommen und anstatt “Application started…” wird “Colors changed at <date/time>” ausgegeben.

Hello World Application

Hello World Application

Das sind Screenshots vom Emulator, als mein Hello World Programm lief. Aber ich habe es auch schon auf meinem Handy getestet und auch da funktioniert es. Ein erster Erfolg, wenn gleich das Programm nix besonderes ist.

Ich hoffe mal, dass ich baldigst mit weiteren Berichten dazu aufwarten kann, dann hoffentlich auch mit funktional umfangreicheren Programmen.

Zusammenfassend lässt sich jedoch sagen, dass das SDK sich gut handhaben lässt und C# natürlich auch eine sehr bequeme Sprache für die Entwicklung ist.

Maddin

:, , , , ,
23 comments for this entry:
  1. Xperimental

    Wünsch dir viel Erfolg. Ich wünsche mir auch mal ne “schöne” SDK für SymbianS60, nicht diesen Schrott, den Nokia da verbreitet…
    Und solang das nicht passiert muss ich mich halt mit JavaME rumschlagen. Das ist zwar nicht ganz so “featuregeladen” wie andere SDKs, aber zumindest läuft etwas.

    Nochwas: Mit was hast du das Video erstellt + publiziert?

  2. Maddin

    Das Video ist mit meiner Digitalkamera aufgenommen. Da hatte es auch noch eine bessere Qualität. Hab dann das Video mit nem Converter in FLV umgewandelt und dann schnell in Flash importiert, um wiederum diese Titelseite davorzusetzen (damit das Video net in Endlosschleife läuft.
    Dabei entstand eine swf-Datei, die ich dann hier im Media-Bereich hochgeladen habe und dann wie ein youtube-Video im Post eingebettet habe.

  3. Xperimental

    Ahja, also so ganz zu Fuß. Ich bin da eher Fan vom einfachen Weg mit den Videoseiten (wobei ich von youtube abgekommen bin).

  4. De Kleene

    Du hast Recht gehabt!!
    Mich hat das Thema wirklich nicht brennend interessiert und ich habe es auch kaum verstanden. So in der Mitte des Beitrags kam in meinem Gehirn nur noch Buchstaben-Wirrwarr an.
    ABER ich bin und bleibe trotzdem eine treue Leserin! ;)

  5. Maddin

    Zunächst einmal danke ich meiner Kleenen, dass sie trotzdem Leserin bleibt :) Ich versuche mal demnächst auch wieder mehr alltägliche Artikel zu schreiben.

    An den Herrn Xp:
    Mag sein, dass Youtube der einfachere Weg ist. Aber ich hab keinen Bock meine Videos dort irgendwie einzustellen… weil dann kann da wieder jeder Kommentare posten und darauf hab ich keinen Bock.
    So gehts auch^^

    btw: ich bastel ja derzeit schon an der nächsten Applikation… bzw. sie ist fast fertig. 2 Funktionalitäten fehlen noch. ;)

  6. Android: The first encounter » sourcewalker.net

    [...] (im Gegensatz zu der schrecklichen SDK von Symbian S60; jetzt muss ich nicht mehr neidisch auf das .NET Compact Framework [...]

  7. Xperimental

    Nochmal zu Youtube (hab grad erst den neuen Kommentar gesehen): Dir ist bekannt, dass man da die Kommentare deaktivieren kann?

    Ich bevorzuge übrigens grade “Vimeo”, nicht nur wegen der besseren Video-Qualität (Youtube holt zwar solangsam auf, aber naja), sondern auch wegen dem aufgeräumteren Interface…

  8. Michael

    Vielen Dank für die gute Beschreibung. Auch ich habe vor n kleines Freizeitprojekt mit C# und meinem Diamond zu starten.
    Hast Du ne Ahnung, ob man via C# auch dasa GPS-Modul ansprechen kann, und ob sich Telefoniefunktionen nutzen lassen für z.B. den Versand einer SMS?

  9. Maddin

    Hallo Michael!
    Erstmal find ichs natürlich sehr toll, dass auch Leute von außerhalb auf mein Blog finden, da sie sich auch für derartige Dinge wie WM-Programmierung interessieren.

    Zu deiner Frage:
    Ich kann aus eigener Erfahrung leider noch nix dazu sagen, da ich immernoch am Anfang stehe und mich erstmal auf so kleinere nützliche Tools stürzen wollte, bevor ich dann weiter gehe.

    Was ich aber sagen kann: Im Samples-Ordner, der mit dem WM6 Professional SDK mitgeliefert wird, gibt es im Unterordner PocketPC/CS/ einen Ordner GPS.
    Bei den Telefoniefunktionen weiß ich es leider auch nicht.

    Ich hoffe das bringt dich etwas weiter.

    Gruß
    Maddin

  10. rebecca

    nice subject. Can you tell me more websites about it.

  11. Eileen Zalewski

    I’ve reckoned many web logs and I can for certain state that this one is my front runner .

  12. Charlena Kuhry

    Wahre Worte! Danke für diesen klasse Beitrag!

  13. fotografies gamou

    Thanks a lot. That was interesting knowing

  14. Prariseax

    Es ist der Skandal!

  15. free movies

    I couldent have made the point any clearer than that. Somepeople will still have there own outlooks on this subject.

  16. lawyer in tucson

    In the grand scheme of things you get an A+ for effort. Where you lost me was in the details. As they say, details make or break the argument.. And it could not be more true here. Having said that, let me tell you what did work. Your writing is very persuasive and that is probably why I am taking the effort to comment. I do not make it a regular habit of doing that. Second, while I can see the jumps in logic you make, I am not sure of how you seem to connect the points which make the conclusion. For now I shall subscribe to your point but hope in the future you connect the dots better.

  17. tracklightingdeals.com

    Blogs ou should be reading…

    [...]Here is a Great Blog You Might Find Interesting that we Encourage You[...]……

  18. weird news

    Howdy! This post couldn’t be written any better! Reading this post reminds me of my old room mate! He always kept chatting about this. I will forward this write-up to him. Fairly certain he will have a good read. Thank you for sharing!

  19. Free Real Estate

    I do not even know how I ended up here, but I thought this post was good. I don’t know who you are but certainly you are going to a famous blogger if you aren’t already ;) Cheers!

  20. wodzirej na wesele

    Wow, fantastic blog layout! How long have you been running a blog for? you make blogging look easy. The whole look of your website is magnificent, neatly as the content!

  21. Zarinius75

    [url=http://promtex.biz]ООО ПромТекс [/url]

  22. Article Submission

    Undeniably believe that which you stated. Your favorite reason seemed to be on the net the easiest thing to be aware of. I say to you, I certainly get irked while people consider worries that they plainly don’t know about. You managed to hit the nail upon the top as well as defined out the whole thing without having side effect , people can take a signal. Will likely be back to get more. Thanks

Leave a Reply

My Twitter

Posting tweet...

Powered by Twitter Tools