2012-10-04 6 views
3

Android 애플리케이션에서 제공하는 Dalvik VM 대신이 JVM 내에서 다른 JVM을 포함시키고 실행할 수 있습니까? 오라클의 ADF Mobile은 Android 및 iOS에서 자체 JVM을 사용하지만 정확하게 수행하는 방법을 지정하지 않았기 때문에 묻습니다. J2ME CDC VM을 기반으로합니다.Android 애플리케이션에서 Dalvik 이외의 VM 가능

제 동료는 dalvik VM 내에서 실행하고 apk에 Java ME CDC 사양을 달성하는 데 필요한 라이브러리를 추가한다고 생각합니다.

완전히 분리 된 JVM이라면 이론적으로 Java EE JVM을 포함하고 백엔드에서 다시 사용할 수있는 비즈니스 로직을 거기에 넣을 수 있어야합니다.

+0

그들은 호출 API/JNI를 사용하여 C로 실제 JVM을 가져온 것으로 의심합니다. – Shark

+0

이것은 전적으로 가능하지만 고려해야 할 것은 상호 운용 비용입니다. 나는 dalvik VM에서 사용자 지정 VM으로 필요한 interop 코드를 작성하는 것이 쉽지 않을 것이라고 생각합니다. 비즈니스 로직이 Java이므로 dalvik VM에서 실행되도록 컴파일하지 않는 이유는 무엇입니까? –

답변

2

예, 이론적으로 C#에 대한 지원을 추가 할 수도 있습니다. 즉, CLR/CLI 지원 또는 원하는 언어 나 VM을 추가 할 수 있습니다.

모든 안드로이드 구성 요소는 실제로 모듈 형이며 전체 OS는 사용자 정의 가능합니다. 문제는 많은 돈과 시간, 노하우와 가장 가능성이 높은 특허 트롤링이 필요하다는 것입니다.

click me for a youtube reply

이 안드로이드에 대한 공식적인 이야기에서입니다.

+0

글쎄요, 오라클은 위의 모든 돈을 가지고 있으며 어떻게하면 커널에 직접 VM을 직접 작성했는지 알 수 있습니다. 그게 전부 내가 알 필요가있는 thats. iOS에서 그들은 객관적인 C 코드에 jvm을 썼다. C 코드는 목적 코드 C의 하위 집합이기 때문에 x 코드로 컴파일 된 보통 jvm 일 가능성이 높다. 꽤 재미있는 것들이지만 idk는 왜 실제로 유용 할 수있는 것이 아닌 j2me를 했는가? 비즈니스 응용 프로그램 개발 컨텍스트에서 – pascalwhoop

+0

@ user1170940 그걸로는 대답 할 수 없지만,이 제품을 모르지만 일부 J2ME 프로필은 C/C++로 코드화하는 데 사용할 수있는 JNI를 지원하므로 더 많은 가능성으로이 플랫폼을 확장 할 수 있습니다 . – axis

관련 문제