アプリは OS でネイティブに実行されないため、そのようなものはまだありませんが、代わりに Dalvik Virtual Machine を使用します (Wikipedia)。バイトコードを使用し、アプリごとに分離された環境を作成するという意味で、Java にいくらか似ています。そのため、Dalvik 環境を他のプラットフォームに移植しない限り、通常のハードウェアでは実行できません。
さまざまな環境で Android アプリを実行しようとする Myriad の Alien Dalvik というプロジェクトがありますが、それに関する情報はあまりありません。無数のエイリアン ダルビック
これが投稿されてから数年で状況が少し変わりました。
現在、エミュレーターや VM を使用せずに Linux で Android アプリを実行する方法がいくつかあります (いずれも完璧ではありませんが)。
<オール>
Shashlik は、GNU デスクトップ環境との非常に優れた統合機能を備えています。ただし、Google Play Services はありません。
ARChon は Google Chrome を利用しており、Android アプリを Chrome アプリのようにインストールできます。かなりきれいですが、ここでも互換性は完全ではありません。
ついに、Google は正式に Play ストアを Chrome OS に導入します。これは Google によって開発された公式プロジェクトなので、多くの中で最高の互換性を持つべきだと思います。 Chrome OS は、Gentoo ベースの Linux ディストリビューションです。そのソース コードの大部分は、Chromium OS プロジェクトを通じて入手できます。このソース コードが利用可能になったので、この互換性を一般的な GNU/Linux ディストリビューションに移植するのはそれほど難しくありません。 Google は比較的オープン ソースに友好的であり (少なくとも Apple/Microsoft と比較すると)、そのような移植に障害を投げかけることはないと思います。どちらかといえば、彼らは Play ストアができるだけ多くのデバイスにヒットすることに熱心であるようです。この機能を Google Chrome for Linux の将来のバージョンに組み込むか、別のパッケージをリリースすることさえあります。 Android と Chrome OS の両方のソースコードのほとんどをリリースしており、内部では Linux を使用しています。
ちなみに、x86 用に APK を個別にコンパイルする必要はありません。作成したアプリは Dalvik Executable (DEX) コードにコンパイルされ、最終的に カーネル によって (必要なアーキテクチャに従って) アセンブリ コードに変換されます プロセッサに送信します。 (この最後の部分はこの回答から取られています。)