im vergleich zu iphone...gibt es für mich einige nachteile:
- umständlich, nativ zu programmiern
- umständlich, ein blödes keyboard anzuzeigen
- simulator ist ewig totlangsam
- ....
dennoch: wir haben es geschafft, dass virtuallonpos sowohl auf iphone
und android läuft...und das nativ.
d.h. wir haben lediglich eine sourcecode, den wir warten müssen
und es läuft wsl. sogar auf symbian oder auf sonst irgndeinen taschenrechner :P.
kommunikation erfolgt mit hilfe von jni (blöde spielerei :P), netzwerklibrary
wurde noch von der diplomarbeit verwendet und erweitert.
im wesentlichen haben wir also ein framework entwickelt, das es erlaubt,
für iphone programmierte spiele (ja, richtiges spiele-framework!) sofort
auf android zu portieren! auch diverse fileoperationen (löschen / verschieben
von files ist möglich => guter alter system()-aufruf :P).
nachteile des ndk von android:
- ziemlich beta, wenn nicht alpha...
- verzicht auf unicode support (wir mussten alle wchar_t funktionen selbst nachschreiben,
bzw. mit templates generische funktionen entwerfen, die auch mit char funktionieren) - lediglich eine dynamische library funktioniert (alle source-files in einem haufen übersetzen, vgl mit iphone: ca. 40 statische libraries),
beim dazulinken von statischen sind manchmal komische
linkerfehler gekommen, die sicher nicht unsere schuld waren. - verzicht auf die stl-library :(
- vermeidung von objective c, wo möglich. C++ ist okay, jedoch standard-c-header verwenden! #include <stdio.h>!
man muss sich natürlich auch noch an weitere, gewisse regeln halten:
Auf: androidhilfe (fand kein komischeres forum auf die schnelle) habe ich eine lösung gepostet, die es erlaubt ein Keyboard anzuzeigen...und zwar ohne einem SICHTBAREN (eigentlich schon sichtbar, aber verdeckt. wenn er nicht sichtbar wäre, würde auch das keyboard nicht erscheinen!) EditText. Genau das, was ich eigentlich schon seit einer Ewigkeit gesucht habe und wobei mir keiner helfen konnte...Gerade bei einem Spiel wird normalerweise vieles, wenn nicht alles selbst gezeichnet, jedoch wird auch bei der iphone-variante nicht auf das native keyboard verzichtet...
besonders besonders ist dabei, dass auf das aufklappen der hw-tastatur reagiert wird!
Wenn diese aufgeklappt wird, wird das softkey-teil eingefahren und beim zuklappen wieder ausgefahren.
dieses spiel kann man ewig so treiben, bis vom logischen keyboard wieder "show(false);" aufgerufen wird...
ideal für unser spiel, da wir im prinzip steuern können, wann genau das keyboard angezeigt werden soll...und diesmal wirklich!
Es gibt massig Lösungen im Internet, die alle nicht zufriedenstellend sind.