2011-10-19 15 views
5

Android'de bir Java uygulaması çalıştırmak istiyorum. Bir kullanıcı arabirimine sahip değildir ve Jetty'i bir sunucu simgesi olarak gömer. Kullanıcıları tarafından normal olarak çevrimiçi olarak erişilen bir web uygulaması uygular ancak Android tabletlerde bu çevrimdışı çalıştırmam gerekir.Android'de düz eski java uygulamasını çalıştırma

Bu mümkün mü? Tek bulabildiğim, Android uygulamalarının nasıl geliştirileceğiyle ilgili bilgiler. Ben sadece java -jar ... eşdeğerini istiyorum ve herhangi bir bilgi memnuniyetle karşılanacaktır.

cevap

3

Android'de buna benzer değil. Android, Apache Harmony tabanlı bir normal JVM yerine bir DVM kullanıyor.

DVM, yalnızca Android SDK ile birlikte gönderilen dx -tool ile normal Java-Bytecode'dan oluşturulan Dalvik-Bytecode'u çalıştırdığı için uygulamayı yeniden derlemeniz gerekir.

Ayrıca, neden bir tablet uygulamasında bir Sunucu Uygulaması çalıştırmanız gerekiyor?

+0

Bazı durumlarda bir mobil cihazda sunucu uygulaması gerekebilir. Örneğin, tabletinize uzaktan erişmek isterseniz. Tabletinizde VNC sunucusu gibi seçeneklere göz atacaksınız. Bunlara benzer şeyler sadece tabletinizde çalışan sunucu varsa – Saurabh

+0

Android tablet uzaktan kontrol ediliyor ... Bilmiyorum: Uzaktan kumandalı bir şey * Android tablet ile * bana daha mantıklı geliyor: D Ayrıca Bunu neden soket kullanmanın mümkün olmadığını anlamıyorum. Sunucu uygulamasının –

+2

kalbi, yalnızca bir soket üzerindeki istekleri dinleyen bir bileşendir. Bu https://market.android.com/details?id=org.onaips.vnc&feature=search_result başvurusuna bakın örneğin – Saurabh

2

Normalde sadece Java kodunu çalıştıramazsınız, Android cihazların bir Java VM'si bile yoktur. Uygulamanızı yeniden derlemeniz ve Dalvik VM tarafından kullanılan dex'e dönüştürmeniz gerekir. Bunu yapmak ya da kolaylaştırmak kolay olsa da, tabi ki, kullandığınız API'lere bağlıdır, çünkü Android'in yalnızca Java SE API'lerinin bir alt kümesi vardır.

0

GNURoot uygulamasını (prot ptrace kapsayıcısı) debian Wheezy ile deneyin;
apt-get güncelleme
apt-get OpenJDK-7-jre yüklemek
/usr/lib/jvm/java-7-OpenJDK-armel/jre/bin/java ... (uzun yol dahil)

İlgili konular