1. Nimm jetzt an unserem Uhans - 3. ADVENT - Gewinnspiel teil - Alle Informationen findest Du hier!

JavaScript/XML-Programm nach JAVA portieren?

Dieses Thema im Forum "Android App Entwicklung" wurde erstellt von menseken, 30.03.2011.

  1. menseken, 30.03.2011 #1
    menseken

    menseken Threadstarter Neuer Benutzer

    Beiträge:
    12
    Erhaltene Danke:
    0
    Registriert seit:
    30.03.2011
    Hallo!

    Ich Newby (bei Euch) möchte ein für meinen alten eBook-reader SONY PRS500 geschriebenes Mahjong-Spiel für den Android-Tablet-Reader Pocketbook-IQ in Java "umschreiben".
    Ich habe schon ein "Android-Lernprojekt" gemacht, kenne also die Grundlagen (activity, intent, view, etc.) ganz gut; mit Java habe ich bisher allerdings erst "theoretisch gearbeitet ...

    Könnte vielleicht jemand bitte ein ganz simples "Grundgerüst" posten, in dem meine custom view "custoMahjong" definiert ist, sowie einige Mahjong-Steine (mj1.png, mj2.png, ...) als Bitmaps (in/auf einem "Canvas") plaziert sind?
    Mehr muss gar nicht sein, außer es gäbe wichtige Hinweise...
    (Sehr hilfreich wäre es schon, wenn es eine Methode gäbe, den angeklickten Stein zu identifizieren - aber das fände ich mit einiger Wühlarbeit auch selber raus).

    Ich habe schon einiges nachgeschaut (hier & stackOverflow), aber nichts weiter helfendes gefunden - oder eben nur "Schnipsel", die bei mir eingebaut nur Fehler produziert haben! (Bitte postet deshalb keine Links zu anderen Tutorials - wie gesagt: ich habe mir schon einiges angeschaut.)

    Vielen Dank schon im Voraus für Eure Hilfe;
    die "Portierung" würde ich dann irgendwann auch als Anleitung/Tutorial (für Amateure wie mich) hier posten.

    Ciao, Clemens
     
  2. DieGoldeneMitte, 30.03.2011 #2
    DieGoldeneMitte

    DieGoldeneMitte Android-Lexikon

    Beiträge:
    1,230
    Erhaltene Danke:
    256
    Registriert seit:
    05.02.2010
    Phone:
    Nexus 5X
    Tablet:
    Nexus 7 (2013)
    Außer einem WebView mit loadWithBaseUrl wäre da nicht viel zu tun.

    Normalerweise würde ich Beispielcode posten. Aber Du scheinst ja hohe Ansprüche an Hilfen zu stellen. Das kann ich sicher nicht leisten. :o
     
    menseken bedankt sich.
  3. menseken, 30.03.2011 #3
    menseken

    menseken Threadstarter Neuer Benutzer

    Beiträge:
    12
    Erhaltene Danke:
    0
    Registriert seit:
    30.03.2011
    Tut mir ehrlich leid, dass ich den Eindruck gemacht habe.
    Leider habe ich in anderen Foren (nicht hier) öfter als Antwort NUR einen Link gefunden, wo man sich dann doch wieder durch ellenlangen Code durchgucken sollte.

    Ich hatte gehofft, dass ein Crack, der menschenfreundlich und nett ist, "mal eben" die 20 Zeilen Code runterschreibt, nach denen ich noch wochenlang suchen würde.
    Die Beispiele "Snake", "Lunar Lander" etc. habe ich mir angeguckt - die sind für meinen bescheidenen Anfang aber immer noch ZU AUSFÜHRLICH!

    Vielleicht habe ich ja noch Glück???

    Falls mir doch noch jemand helfen kann, wäre ich ihm (Dir?) sehr dankbar...

    P.s.: Wofür bräuchte ich denn eine WebView? Ich wollte den Code nicht als JavaScript laufen lassen (falls das Deine Empfehlung bedeutet?), sondern schon "richtig" als Java programmieren. Die eigentliche Programm-Logik muss ich ja nicht neu entwickeln; ich MÖCHTE ja gerade Java lernen (und Android).
    (Mein Problem liegt in der ganzen Constructor-Definiererei, die es bei JavaScript eben nicht gibt.)
     
  4. DieGoldeneMitte, 30.03.2011 #4
    DieGoldeneMitte

    DieGoldeneMitte Android-Lexikon

    Beiträge:
    1,230
    Erhaltene Danke:
    256
    Registriert seit:
    05.02.2010
    Phone:
    Nexus 5X
    Tablet:
    Nexus 7 (2013)
    Entschuldigung angenommen :D

    Ich ging in der Tat davon aus, dass Du das JavaScript Programm "as is" als App Programm auf dem Androiden laufen lassen wolltest. In diesem Fall hättest Du mit dem WebView.loadWithbaseurl sozusagen eine virtuelle Webseite bauen können, die sich die Komponenten aus dem asset Verzeichnis (oder woauch immer her) gezogen hätte.

    Ein JavaScript Programm nach Java portieren ist eine völlig andere und deutlich kompliziertere Angelegenheit. Java und JavaScript haben nämlich außer dem Namen nicht viel gemeinsam. Da kannst Du genauso gut versuchen, ein Javascript Programm nach C++, objective C oder Haskell zu portieren.

    Und die Konstruktoren sind da das kleinste Problem :)
     
    Zuletzt bearbeitet: 30.03.2011
  5. menseken, 31.03.2011 #5
    menseken

    menseken Threadstarter Neuer Benutzer

    Beiträge:
    12
    Erhaltene Danke:
    0
    Registriert seit:
    30.03.2011
    Hi,
    um meine Frage von oben einfach noch einmal zu stellen:

    Würde mir ein netter Mitleser bei "www.android-hilfe.de" eventuell eben diese anbieten und mir ein einfaches Grundgerüst einer custom view mit "eingehängter" Canvas (mit z.B. zwei plazierten Bitmaps: x-y-Werte) posten?

    Ich brauche einfach nur einen ersten Schritt, auf dem ich weiter aufbauen kann...

    VIELEN DANK! Clemens
     
  6. funcoder, 01.04.2011 #6
    funcoder

    funcoder Erfahrener Benutzer

    Beiträge:
    218
    Erhaltene Danke:
    38
    Registriert seit:
    15.08.2009
    Was ich gefunden habe wäre ein Template, was den Grundaufbau für dein Vorhaben beinhaltet (Game-Loop, Draw-Methode etc.)
    Ist bereits ein fertiges Java-Project als Zip-File.
     
    menseken bedankt sich.
  7. menseken, 01.04.2011 #7
    menseken

    menseken Threadstarter Neuer Benutzer

    Beiträge:
    12
    Erhaltene Danke:
    0
    Registriert seit:
    30.03.2011
    DANKE! :thumbsup: @ funcoder:
    ich hatte vorhin nur Zeit, das template in Eclipse zu laden (musste R.java verschieben), dann ists auch schon im Emulator erschienen...

    Sieht wirklich schon mal richtig GUT aus!

    (Wenn was draus geworden ist, werd ich mindestens screenshots posten.)
     
  8. menseken, 05.05.2011 #8
    menseken

    menseken Threadstarter Neuer Benutzer

    Beiträge:
    12
    Erhaltene Danke:
    0
    Registriert seit:
    30.03.2011
    Sooooo -

    ... und kaum einen Monat später habe ich meine App im Prinzip (kleinere Bugs...) fertig und werde sie hier für interessierte posten (falls erlaubt - muss noch nachgucken).

    @ funcoder: Dein Template hat mir sehr geholfen!
    ...
    Allerdings gabs (abgesehen von 2 Wochen Ferien meines Sohnes ohne viel Zeit zum basteln) doch einen Haufen Hindernisse:

    In (android-) Java haben z.B. ARRAYS eine konstante (initialisierte) Länge, während ich beim Anlegen der ca. 140 Mahjong-Steine, beim "Löschen" etc., in JavaScript einfach Elemente "gezogen" und gleich entfernt hatte.
    In Java musste ich die (zufällig) "gezogenen" Elemente durch eine große Dummyzahl ersetzen, das Array sortieren, dann eine while-Schleife abarbeiten bis eine der großen Zahlen auftauchte - SEHR umständlich !!!

    Ist jemand an weiteren Details interessiert?
    Ich will niemanden zuschwallen, und etwas Arbeit wäre es schon auch. Bitte meldet Euch bei Interesse!

    Hier kommt erst mal ein Screenshot:
    (später mal die App...)
    .
     

    Anhänge:

  9. swordi, 05.05.2011 #9
    swordi

    swordi Gewerbliches Mitglied

    Beiträge:
    3,389
    Erhaltene Danke:
    441
    Registriert seit:
    09.05.2009
    statt arrays einfach vector oder arraylist verwenden, dann ist es einfacher :D
     
    menseken bedankt sich.
  10. menseken, 05.05.2011 #10
    menseken

    menseken Threadstarter Neuer Benutzer

    Beiträge:
    12
    Erhaltene Danke:
    0
    Registriert seit:
    30.03.2011
    Oh, danke, swordi!

    Wenn so schnell eine interessante Alternative angeflogen kommt, lohnt es sich vielleicht in jedem Fall, meine angetroffenen Hindernisse zu posten -
    womöglich entsteht dann so eine Art ad-hoc "Portierungs-Ratgeber"...

    (1990: ) "Schau mer mal!"
     
  11. xeaon, 17.05.2011 #11
    xeaon

    xeaon Neuer Benutzer

    Beiträge:
    3
    Erhaltene Danke:
    0
    Registriert seit:
    17.05.2011
    Also so würde ich das nicht sehen :)


    Hast du dir schonmal den Appcelerator angeschaut? Der wandelt Javascript (natürlich muss man sich an eine gewisse Syntax halten) in Native-Code um, sogar für Windows & iOS ;-)
     
  12. DieGoldeneMitte, 18.05.2011 #12
    DieGoldeneMitte

    DieGoldeneMitte Android-Lexikon

    Beiträge:
    1,230
    Erhaltene Danke:
    256
    Registriert seit:
    05.02.2010
    Phone:
    Nexus 5X
    Tablet:
    Nexus 7 (2013)
    Kannte ich noch nicht, klingt interessant.

    Aber da geht es aber eher darum, dass man JavaScript code gleich so schreibt, der dann automatisch auf andere Plattformen portiert. Dass man da bestehende Apps einfach reinschmeißen kann, halte ich für sehr optimistisch. :D

    Beim Überfliegen der Seite habe ich nichts gefunden, dass sagt, dass die den JS Code wirklich nach Java konvertieren. Im Prinzip könnte man JS ja unverändert in einem WebView laufen lassen (was der OP ja genau nicht wollte).
     
  13. xeaon, 18.05.2011 #13
    xeaon

    xeaon Neuer Benutzer

    Beiträge:
    3
    Erhaltene Danke:
    0
    Registriert seit:
    17.05.2011
    Natürlich kann man bestehende Apps nicht einfach so da reinschmeißen :D

    Doch :) musste genauer schauen, der wandelt alles in Native-Code um
     

Diese Seite empfehlen