iPhone/iPod/iPad und Java?

Jayva

Mitglied
Hallo. Weiß jemand, ob man auf dem iPhon/iPod/iPad Apps mit Java für den Apple Store programmieren? Oder geht nur xCode für diese "apple" Geräte?
 

Noctarius

Top Contributor
Es geht nicht nur XCode aber gerade Java geht nicht (außer über xmlvm). Wobei es mal Ankündigungen für JavaME für's IPhone gab, ob das aber fertig wurde, keine Ahnung.
 

Geeeee

Bekanntes Mitglied
Und auch wenn es existieren sollte, muss es noch von Apple akzeptiert werden, damit du in den AppStore kommst. Sind die nicht vor ~6 Monaten dazu übergegangen, dass man nur noch (objective) C Programme offiziell einreichen darf? Also auch wenn ein Compiler aus java ein Pseudo-Objective-C Programm erstellt, kann es sein, dass du es auch nicht in den Store bekommst.
 

Sonecc

Gesperrter Benutzer
Und auch wenn es existieren sollte, muss es noch von Apple akzeptiert werden, damit du in den AppStore kommst. Sind die nicht vor ~6 Monaten dazu übergegangen, dass man nur noch (objective) C Programme offiziell einreichen darf?
Diese Einschränkungen sind diesen Monat aufgehoben worden.

Dennoch gibt es keine Java-fähigkeit im iOS, egal welcher Version
 

MarderFahrer

Gesperrter Benutzer
Es gibt zwar nicht direkt "Java" als Möglichkeit für iOS Geräte zu proggen, aber dafür eine ähnliche Alternative.

Titanium Mobile von Appcelerator.

Auch wenn nicht auf Java, sondern auf JavaScript gesetzt wird, macht das Programm einem dennoch Nativen Code. Und das nicht nur für die iOS Platform, sondern auch für Android. (Und ich hab mal Gerüchteweise was von Blackberry gehört). Aber Android und iOS funktionieren jetzt schon.

Man kann sich also eine einzige Codebase schaffen und diese für beide Platformen builden. Vorrausgesetzt man achtet auf die Unterschiede zwischen den Platformen und fängt diese im Code ab, damit der Complier da nicht ins stocken gerät. Wäre z.b schwierig die iAD Implementierung zu verwirklichen wenn man einen Android Build machen möchte.

Die Oberflächen Gestaltung ist zwar nicht ganz so komfortabel wie mit dem InterfaceBuilder von xCode, aber ansonsten kann man damit schon ne Menge machen. Besonders wenn einem JavaScript vertrauter ist als objC.

Um die Business Logik dennoch in Java schreiben zu können käme mir da noch die Idee dies mittels GWT zu probieren. Da kann man ja (so ziemlich) reinen Java Code schreiben und dieser Code wird dann in JavaScript übersetzt. Ohne das jetzt getestet zu haben würde ich vermuten, dass dieser JavaScript Code dann auch in Verbindung mit Titanium funktionieren müsste.
Das ist, wie gesagt aber nur mal so ins Blaue geraten von mir. Hab ich noch nicht ausprobiert.
Bisher reichte es mir die Logik direkt in JavaScript zu schreiben.
 

Noctarius

Top Contributor
Wenn wir schon bei JavaScript sind kann man da auch noch Sencha anmerken. Gerade in Verbindung mit GWT (bzw der ExtJS Erweiterung GXT) kann man da HTML/JS Sachen basteln wo Sencha automatisch ein natives GUI Feeling erzeugt.
 

MarderFahrer

Gesperrter Benutzer
Ja, angeguckt bzw. ein bisschen mit gespielt hab ich auch schon. Als inoffizieller Vorgänger kann man dann noch jQTouch erwähnen als Plugin für das jQuery Framework.

Das sind dann alles Lösungen, die man im Web deployen kann. Wenn man das ganze dann noch in den App Store bringen will, braucht man noch so etwas wie PhoneGap.
Ich persönlich kann zwar noch keine Vergleiche ziehen, habe aber an manchen Stellen gelesen, dass die PhoneGap/Sencha/jQTouch Lösungen wohl nicht so performant sind wie Nativer Code. Was natürlich Sinn macht.

Wenn man also eine "schwere" Anwendung plant, sollte man wohl immer versuchen Native zu gehen.
Wer nur die 1001. BMI Rechner oder Taschenlampen Anwendung machen will, für den reicht auch PhoneGap.
 

ice-breaker

Top Contributor
Und ich hab mal Gerüchteweise was von Blackberry gehört
nicht nur Gerüchte, das wird die nächste unterstützte Platform. Kunden im Premium Programm von Appcelerator haben auf die Beta scheinbar schon Zugriff.

Aber Android und iOS funktionieren jetzt schon.
und das wirklich sehr gut, wenn man eine Applikation hat, die mit Titanium Mobile baubar ist (es wird eben nicht alles unterstützt), dann sieht man keinen Unterschied zu einer Applikation, die mit Objective-C erstellt wurde.

Um die Business Logik dennoch in Java schreiben zu können käme mir da noch die Idee dies mittels GWT zu probieren. Da kann man ja (so ziemlich) reinen Java Code schreiben und dieser Code wird dann in JavaScript übersetzt. Ohne das jetzt getestet zu haben würde ich vermuten, dass dieser JavaScript Code dann auch in Verbindung mit Titanium funktionieren müsste.
vermute ich eher weniger, du musst schon die Titanium Mobile Funktionen nutzen, die GWT ja nicht kennt. Also das das funktioniert, bezweifel ich sehr stark.

Das ist, wie gesagt aber nur mal so ins Blaue geraten von mir. Hab ich noch nicht ausprobiert.
Bisher reichte es mir die Logik direkt in JavaScript zu schreiben.
das meiste ist doch zutreffend und beschreibt es sehr gut.

Ich persönlich kann zwar noch keine Vergleiche ziehen, habe aber an manchen Stellen gelesen, dass die PhoneGap/Sencha/jQTouch Lösungen wohl nicht so performant sind wie Nativer Code. Was natürlich Sinn macht.
nicht nur, dass es langsamer ist, wenn ich eine native Applikation habe, erwarte ich ehrlich gesagt auch die ganzen nativen UI-Elemente von iOs und nicht "selbst gemalte" von jqTouch, das ist denke ich mal ein riesen Kritikpunkt gegen das deployen von jqTouch als natives App.
 

Noctarius

Top Contributor
nicht nur, dass es langsamer ist, wenn ich eine native Applikation habe, erwarte ich ehrlich gesagt auch die ganzen nativen UI-Elemente von iOs und nicht "selbst gemalte" von jqTouch, das ist denke ich mal ein riesen Kritikpunkt gegen das deployen von jqTouch als natives App.

Und genau hier setzt Sencha wohl an. Wie ich es verstanden habe nutzt es intern (wie auch immer) die nativen GUI Elemente des Betriebssystems, falls nicht sehen die "selbst gemalten" Digner täuschend echt aus und verhalten sich eben so. Groß was damit gemacht habe ich noch nicht, nur ein bisschen Spielerei, aber ich fand es schon echt beeindruckend.
 

ice-breaker

Top Contributor
Hmm, also dass Titanium Mobile die nativen Elemente nutzt ist garantiert, aber bei Sencha Touch bin ich mir gerade echt nicht sicher. Die sagen man kann die Elemente über CSS3 stylen, aber die nativen Elemente haben eigentlich rein gar nichts mit CSS zu tun, es seidenn Sencha parsed das CSS und kann bestimmte Eigenschaften (color) auf die echten nativen Elemente anwenden.
Andererseits befindet sich aber ExtJs in der Dokumentation zu Sensa Touch, hmm

Edit: Das sind ja WebApps, damit sind es garantiert nicht die nativen UI-Elemente sondern teilweise wirklich gut nachgebaute.
 
Zuletzt bearbeitet:

Noctarius

Top Contributor
Keine Ahnung, wie gesagt wenn die gefaked sind, haben die das richtig gut gemacht, sogar dieser (wie heißen die) Slider, die iPad und Konsorten auch zum Entsperren nutzen, ist vorhanden und verhält sich wie gewohnt - vielleicht merke ich auch nur keinen Unterschied da ich iZeugs Verächter bin ;)
Sencha ist ExtJS (im Hintergrung irgendwie).
 
Zuletzt bearbeitet:

Ähnliche Java Themen

Neue Themen


Oben