2012-03-04 3 views
9

Tworzę silnik gry, który jest przeznaczony dla platformy Android z wykorzystaniem Javy i chciałbym w nim osadzić język skryptowy. Próbowałem Jython, LuaJava i Groovy, ale żaden z .jar, które włączam do mojego projektu, aby używać tych języków, działa. W rezultacie mój silnik gry nie działa.Czy istnieje język skryptowy, który mogę umieścić w mojej aplikacji Java na Androida?

Jestem świadomy, że platforma Android kompiluje aplikację do kodu bajtowego java, a następnie konwertuje ją do formatu .dex kompatybilnego z Dalvik, ponieważ Android używa maszyny wirtualnej Dalvik. Jestem więc pewien, że niestety te języki skryptowe prawdopodobnie nie będą działać dla projektu aplikacji Java na Androida.

Moje pytanie brzmi, czy istnieje język skryptowy, który mogę umieścić w moim silniku gry Java, który będzie działał na platformie Android?

Dzięki.

+0

Istnieją dwa systemy do tworzenia gier Lua dla systemu Android (Corona SDK, Moai), więc Lua pozostaje opcją, nawet jeśli jeszcze nie działa. Vendetta Online można rozszerzyć na urządzeniach za pomocą skryptów Lua. W każdym razie: czy chcesz, aby język rozwijał aplikację lub język, z którego Twoi użytkownicy będą korzystać, aby rozszerzyć swoją aplikację? Fuzzes "Scripting language" w obu przypadkach. –

+0

Język, z którego korzystają moi użytkownicy, aby rozszerzyć moją aplikację –

Odpowiedz

0

Clojure byłby opcją - która zdecydowanie działa na Androidzie, mam nawet Clojure REPL app dzieje się na moim HTC, jak mówimy!

Możesz również znaleźć odpowiedzi na Java: Scripting language (macro) to embed into a Java desktop application przydatne.

+0

... i jak dobrze to działa? Jak duży narzut dodaje we wszystkich znaczeniach? Ile czasu zajmuje aplikacja używająca clojure do uruchomienia? Ile aplikacji "clojure" musi być napisane w Javie? Pytam, ponieważ odpowiedzi na te pytania były wprost przerażające, a nawet wtedy ludzie będą się zastanawiać, w jaki sposób ktoś - nie oni - może skorzystać z 2-sekundowego startowego powolnego melasy Clojure. –

+0

Nie testowałem tego, więc nie mam pojęcia. Ale Clojure jest obecnie jednym z najszybszych dynamicznych języków na JVM, ogólnie w obrębie 2-3 elementów statycznie napisanych języków programowania, takich jak Scala lub Java: http://shootout.alioth.debian.org/u64q/which- języki programowania-is-fastest.php – mikera

+0

Dalvik to nie JVM, i żeby rozsądnie odpowiedzieć na moje pytania, wystarczy użyć Clojure do opracowania aplikacji na Androida. Odpowiedzi byłyby wtedy następujące: "nie, nie zauważyłem żadnego niezwykłego opóźnienia uruchomienia". "Dodaje około 0,5M do rozmiaru APK, po ProGuard, ale nie próbowałem tego zmniejszać.", Itp. –

2

Zastosowanie DeeLang

Powinien działać na co używasz go lub przynajmniej to, co brzmi jak używasz go.

ref URL: http://code.google.com/p/deelang/

+0

Podobnie jak mikera powiedział .. istnieje wiele odpowiedzi na przepełnienie stosu, które odnoszą się do tego. Kontynuuj przeglądanie, jeśli to, co tu znajdziesz, nie pasuje do Ciebie. – aStackofQueues

+0

Czy są pełne przykłady użycia DeeLang? Szukałem go, ale nie mogłem nic znaleźć. Zbudowałem słoiki i dokumenty. Przykład na tej stronie daje pewien wgląd, ale nie jest kompletny (np. Jak wyglądałaby w tym przykładzie składnia DeeLang). http://code.google.com/p/deelang/wiki/UsingDeeLang. –

0

LuaJava może być stosowany na Androidzie. Dokładnie rozpocząłem pracę z AndroLua, która oferuje działający przykład.