Ist JME noch am Leben?

7

Ich habe JME vor langer Zeit gelernt und jetzt arbeite ich an Android und ich möchte wissen, wo Java Micro Edition ist.

Ich habe versucht auf Google, aber alle Links sind alt.

Könnte jemand einige Links oder Dokumentationen haben, die mir helfen, über die Zukunft von JME Bescheid zu wissen?

    
levolutionniste 25.10.2014, 13:48
quelle

3 Antworten

7

Ich nehme an, wir sprechen hier über MIDP.

Es hängt von Ihrer Definition von "tot" ab.

Die Leute behaupten, dass JavaME seit Jahren tot ist. Der Verkauf einer beliebten Messaging-App hat kürzlich ergeben, dass 50% der Benutzer den JavaME-Client verwenden.

Ich denke, dass JavaME definitiv sterben wird, da keine neuen Geräte (oder auch nur sehr wenige) mit JavaME-Unterstützung erstellt werden. Ich glaube nicht, dass es schon tot ist, aber es wird in naher Zukunft sein.

Nokia hat mit seinen Asha-Geräten einen letzten Versuch unternommen, eine Menge neuer APIs einzuführen. Aber es hat JavaME kein neues Leben gegeben.

Aber JavaME ist auch andere Dinge. Mit dem neuen JavaME SDK können Sie beispielsweise Blu-ray Disc-Anwendungen (BD-J) erstellen. Dies ist auch JavaME.

    
mr_lou 25.10.2014, 16:02
quelle
10

2 Jahre nachdem Ihre Frage gestellt wurde, können wir nun sagen, dass J2ME als Entwicklungsplattform wirklich tot ist.

Ich habe J2ME entwickelt, seit es erschienen ist, und es gab verschiedene Gründe, warum die Plattform von Anfang an zum Scheitern verurteilt war:

  1. Bugs in VM-Implementierungen Jeder Hersteller hat seine eigene Version der virtuellen Maschine und der APIs implementiert, die sich über die Jahre hinweg verbessert haben. Einige waren erfolgreicher als andere, aber wir können sagen, dass jedes Gerät einige Bugs hatte. Einige wirklich beliebte Geräte waren aus Entwicklerperspektive fast nicht verwendbar.

  2. Benutzerdefinierte APIs MIDP 1-Plattform begann mit fast keinen praktischen Bibliotheken, die zum Implementieren von Spielen verwendet werden konnten - keine Sounds, kein direkter Zugriff auf Pixel. Hersteller haben ihre eigenen APIs (Nokia kommt mit dem besten, später tatsächlich von Samsung-Geräten übernommen). Als MIDP 2 kam, verwendeten Entwickler bereits benutzerdefinierte APIs und die Integration von MIDP 2 und allen neuen Bibliotheken (z. B. MMAPI für Sounds) ging langsam und wieder, die neue Implementierung enthielt eine Menge Fehler. Außerdem waren die offiziellen APIs abstrakter als native APIs und hatten daher manchmal eine schlechtere Leistung. Am Ende mussten Entwickler sowohl native APIs als auch die neuen MIDP2-APIs unterstützen.

  3. Fragmentierungshölle Abgesehen von der Fragmentierung, die durch native APIs und unterschiedliche Unterstützung von offiziellen APIs auf verschiedenen Geräten verursacht wurde, gab es neben vielen Implementierungsfehlern, die Problemumgehungen erforderten, auch einen ganz anderen Bildschirm Größen, unterschiedliche Unterstützung für Tonformate, Bluetooth-Bibliotheken (erforderlich für Multiplayer-Spiele), Keypad-to-Touch-Displays, Größenbeschränkungen (z. B. 60-150 kB für das Installationspaket, je nach Gerät). Im Jahr 2009 hatten wir etwa 90 Versionen eines Spiels, um alle Geräteklassen zu unterstützen. Das erhöhte die Kosten für Test und Support (außerdem mussten wir viele der Geräte besitzen, um Apps auf ihnen zu testen. Mit den vielen neuen Geräten, die veröffentlicht wurden, war es nicht mehr möglich, genug neue Geräte zum Testen zu kaufen). Sie fragen sich vielleicht, warum wir keine Simulatoren zum Testen verwendet haben. Das Problem mit Simulatoren war, dass einige von ihnen sehr langsam waren (benötigt einen vollständigen Neustart für jede App-Bereitstellung, zB 30 Sekunden bis 2 Minuten) und einige waren im Grunde generische Simulatoren mit einem Skin, daher haben sie sich nicht wie echte Geräte verhalten.

    >
  4. Geringe Marge Die Art und Weise, wie Entwickler J2ME-Apps verkauften, war ziemlich verrückt. Sie brauchten einen Distributor, der oft Verträge mit anderen Distributoren auf der ganzen Welt hatte, die Verträge mit Mobilfunkbetreibern hatten. Sie wissen, dass die meisten Spiele über Mobilfunkanbieter verkauft wurden, aus Prepaid-Plänen bezahlt wurden oder Premium-Textnachrichten verwendet wurden. Von den Anwendungskosten, die von 1 US-Dollar bis 5 US-Dollar betragen konnten, nahm der Betreiber 50 Prozent oder sogar mehr. Ein anderer Teil des Gewinns wurde von den Händlern genommen. Der Entwickler hat normalerweise weniger als 10% der App-Kosten. Um jedoch tatsächlich über das Vertriebsnetz verkauft zu werden, gab es eine Liste von Geräten, die die Anwendung unterstützen musste. Daher konnten die Entwickler die Gerätefragmentierung nicht vermeiden und mussten auch alle alten Geräte unterstützen.

Diese vier Probleme führten im Laufe der Jahre zum Ende vieler Entwicklerfirmen, während Distributoren und Betreiber immer noch eine Menge Geld verdienten. Das System ging weiter bis Apple mit iOS kam und Google mit Android kam. Während Android mit seiner eigenen Fragmentierung der Hölle kam, kam es auch mit automatischen Systemupdates, daher wurden zumindest die Bugs langsam behoben. Die meisten J2ME-Spiele können auch problemlos auf Android portiert werden. Die wirklich entscheidende Änderung war der App Store im iOS- und Play Store auf Android. Anstatt durch mehrere Vertriebshändler zu gehen, die 90% des Geldes kauften, war der Verkauf von Apps durch Läden, die Ihnen 70% geben würden, ein großer Schritt vorwärts. Die Entwicklung von Apps wurde wieder profitabel und die Entwickler begannen, auf diese beiden Plattformen umzusteigen.

Die J2ME-Welt hat versucht, sich für eine Weile zurückzuziehen - es gab Java Verified, das anbot, zu zertifizieren, dass Ihre App an Klassen von Geräten arbeitet. Leider war es kostspielig und half meines Erachtens nicht, die Fragmentierung zu reduzieren - es waren die Geräte, die verifiziert werden mussten, nicht die Apps.

Hersteller kamen auch mit ihren eigenen Anwendungsläden, z.B. Nokia mit seinem OVI-Store aber es war zu spät.

Hersteller stellten langsam fest, dass Android ihre Entwicklungskosten reduzieren konnte - sie brauchten keine Entwickler mehr für ihre eigenen nativen Firmwares, also hörten sie auf zu kämpfen und nahmen stattdessen Android an. Das hatte zwei Konsequenzen - eines war das Ende von J2ME, weil J2ME für Android nicht nötig war, das zweite war das Ende einiger Hersteller und das Wachstum neuer Produkte.

    
Sulthan 17.04.2016 13:32
quelle
3

Ja. JME ist noch am Leben, wie das folgende zeigt:

  • Die Developer Preview-Version von Java ME 8.1 vom September 2014: Ссылка

Was die Zukunft betrifft, sind mir keine offiziellen Ankündigungen von Oracle bekannt. Allerdings muss man sagen, dass der Erfolg von Android die Zukunftsaussichten von JME stark beeinträchtigt hat.

    
Stephen C 25.10.2014 14:08
quelle

Tags und Links