Android OSでは、デスクトップ環境でコンパイルされたいくつかのJavaJARファイルを実行できます。たとえば、jtransforms
なぜそうなのか分かりますか?OracleのJVMとGoogleのDalvikVMは2つの異なるバイトコード形式を使用していると思いましたか?Java SEによってコンパイルされたJARファイルがAndroidで実行できるのはなぜですか?
Android OSでは、デスクトップ環境でコンパイルされたいくつかのJavaJARファイルを実行できます。たとえば、jtransforms
なぜそうなのか分かりますか?OracleのJVMとGoogleのDalvikVMは2つの異なるバイトコード形式を使用していると思いましたか?Java SEによってコンパイルされたJARファイルがAndroidで実行できるのはなぜですか?
私はあなたがあなたのAndroidプロジェクトにjarファイルを単に含めていると思いますか?次に、ビルドプロセス中に、dex形式に変換されるので(同じことが独自のクラスファイルに対しても行われます!)、機能します。これは、dex(dx)ツールを使用して実行されます。EclipseでADTを使用すると、自動的に実行されます。もちろん、AndroidSDKでも手動で使用できます。
android-sdk-windows\platform-tools\dx.batWindowsの場合の下。
ウィキペディアによると、dxコンパイルされ.classたファイルを.dex形式に変換するために使用されます。
1. Java SE - Java (Swing + AWT)=Android
2 In 2005, when Java was undergoing changes, Android creator didnt wanted to base Android
totally on Java.。So they included JVM as the 1st compilation unit, thats the reason
JRuby , Jython, etc can be used to write Android apps。And 2nd Compilation unit as Dalvik
Compiler。
3. So its quite natural that a jar file compiled under desktop environment works fine on Android.