Android独自の実行環境

AndroidのアプリケーションはJavaのVM上で動作しますが、日ごろ使用しているJava VMとは異なり、DalvikVMという低メモリ環境に最適化された独自のVM上で実行されます。

 DalvikVMでは、Java標準のクラスライブラリのすべてがサポートされているわけではなりません。その結果、世の中に存在するJavaライブラリの多くはそのまま持ってきても使う事はできません。もし運よく、使いたいライブラリが非対応のAPIを利用していなければ使用できるので、Androidプロジェクトのビルドパスに対象のライブラリを追加して、エラーが出るかどうかで判断してください。

 ビルドからアプリケーション実行までの流れも、かなり特徴的です。

1. Java ソースコードをコンパイルして.classファイルを生成
2. Javaクラスファイル(.class、.jar)をリコンパイルして、実行形式のファイル(.dex)を生成
3. パッケージングしてアプリケーションファイル(.apk)を生成

 このように、生成されたapkファイルを使ってアプリケーションがインストールされ、展開された.dexファイルでアプリケーションが実行されるという流れになります。