才能のある開発者の努力のおかげで、LinuxでAndroidアプリやゲームを実行する方法は複数あります。この記事では、そのうちの7つについて説明します。
Androidアプリの実行がLinuxでネイティブに実行されないのはなぜですか?
AndroidとLinuxが同じカーネルを共有していることを考えると、AndroidアプリをLinuxでネイティブに実行するのは簡単だと思われるかもしれませんが、そうではありません。これは、カーネルがオペレーティングシステムのコアにすぎず、日常的に操作するアプリケーションを実行するには、カーネルよりもはるかに多くのソフトウェアが必要になるためです。
さらに、Android APKファイルは単純な実行可能ファイルではありません(Windowsの.exeファイルなど)。これらは基本的に、特定の場所にファイルを抽出することを目的としたインストーラーパッケージです。抽出されたファイルは、実行されると、Androidオペレーティングシステムの特定の関数を呼び出して、ファイルシステムやハードウェアコンポーネントなどにアクセスします。
人気のあるLinuxディストリビューションは、Androidアプリとの互換性を保つ努力をしていません。そのため、Linuxユーザーは、Androidエミュレーターを使用してコンピューター上でAndroidデバイスをシミュレートするか、Androidアプリと互換性のあるオペレーティングシステムを使用する必要があります。
1.1。 Anbox
Anboxは、ハードウェアアクセスを抽象化し、AndroidアプリケーションをLinuxオペレーティングシステムと統合するという点で、概念的にはWine(Linux上でWindowsアプリケーションを実行できるようにする無料のオープンソース互換性レイヤー)に似ています。
プロジェクト全体がオープンソースであり、ApacheおよびGPLv3ライセンスの条件の下でライセンスされています。開発者の目標は、すべてのAndroidアプリとゲームをLinuxで実行できるようにすることです。 Anboxはハードウェア仮想化なしで実行されるため、適切なパフォーマンスとホストオペレーティングシステムとの緊密な統合を提供します。
Anboxはスナップとしてのみ配布されるため(開発者は、スナップを使用すると作業がはるかに楽になり、複数の配布用にカスタマイズしなくても更新を頻繁にリリースできると主張しています)、インストールできるのは サポートされているディストリビューション Snapを手動でインストールしない限り、いくつかの簡単なコマンドが必要です。これらのコマンドはすべて、SnapのWebサイトで詳細に説明されています。
Anboxがインストールされている場合、Android Debug Bridge(adb)を使用してAPKを追加できます。その後、ホストシステムアプリケーションランチャーを介してアプリケーションを起動し、システムで実行されている他のすべてのアプリケーションと同じように管理できます。
2.2。 アーク溶接機
Google Chromeユーザーの場合は、ARC Welder(Chrome用アプリランタイムとも呼ばれます)を使用してLinux上でAndroidアプリを実行できます。このChrome拡張機能は、実際にはAndroidデベロッパーがAndroidアプリをテストして他のプラットフォームのChrome OSに公開できるようにすることを目的としていますが、個人的な目的で使用できないわけではありません。
Arc Welderは開発者向けのツールであるため、GooglePlayストアで公開されているアプリへのアクセスは提供していません。 Androidアプリを実行するには、まずAPKファイルを見つけてダウンロードし、次にArcWelderを使用してファイルを開く必要があります。幸いなことに、APKファイルを簡単にダウンロードできるWebサイトはたくさんあります。 APKMirror 、 APKPure 、 また APKストア 。
残念ながら、アーク溶接機は2018年6月に最後に更新されたため、バグが予想されます。それでも、LinuxでAndroidアプリを実行する簡単な方法を見つけるのは難しいでしょう。
3.3。 Genymotion
2020年であるため、かつて人気のあったShashlikというAndroidエミュレーションソリューションはお勧めできません。の最後のバージョン シャシリク 2016年にリリースされ、それ以来、その開発者は静かになっています。ただし、さらに優れたもの、Genymotionをお勧めします。
このクラウドベースのAndroidエミュレーターは、Amazon Web Services、Microsoft Azure、Google Cloud Platform、Alibaba Cloudのコンピューティング能力のおかげで、アプリのテストを合理化し、事実上無制限のスケーラビリティを享受したいすべてのAndroid開発者に恩恵をもたらします。
Genymotionは、ハードウェアセンサーのフルセットのおかげで、3,000を超えるAndroidデバイス構成をエミュレートし、考えられるすべてのシナリオをシミュレートできます。唯一の問題は、無料で60分しか使用できないことです。その後、1分あたり5セントになります。
四。 Android-x86
Android-x86は、Androidをx86命令セットに移植することを目的としたプロジェクトです。 Android-x86は完全なオペレーティングシステムであるため、次のような仮想化ソフトウェアが必要です VirtualBox Linuxディストリビューション内で実行します。
Android-x86用にVirtualBox仮想マシンをセットアップする場合は、[タイプ]を[Linux]に、[バージョン]をLinux2.6以降に設定します。少なくとも2GBのRAMを割り当て、8GB以上のストレージスペースを持つ新しいハードディスクイメージを作成します。 Android-x86インストールイメージをロードし、 公式インストール手順 。
Android-x86はベアメタル上で実行することを目的としているため、仮想マシン内でAndroid-x86を実行する場合、優れたパフォーマンスは期待できません。
5.5。 Android Studio IDE
Android Studio IDEは、Android向けのGoogleの公式統合開発環境です。 JetBrainsのIntelliJIDEAソフトウェア上に構築されており、Linux、Windows、macOS、ChromeOSで動作します。 Android Studio IDEには、AndroidStudioでアプリを実行およびデバッグすることを目的としたAndroidエミュレーターが含まれています。
エミュレーターをインストールするには、SDKマネージャーの[SDKツール]タブでAndroidエミュレーターコンポーネントを選択します。実行するアプリを開き、上部のメニューバーにある緑色の「いいね」ボタンをクリックします。デバイスを選択するように求められたら、[新しい仮想デバイスの作成]ボタンをクリックして、そのプロパティを指定します。終了したら、使用可能な仮想デバイスのリストからそれを選択し、[OK]をクリックします。仮想デバイスはすぐに起動し、アプリケーションを自動的に開く必要があります。
Android StudioIDE内のAndroidEmulatorは、そのパフォーマンスや使いやすさに驚かされるわけではありませんが、スマートフォンにインストールせずにLinuxで単一のAndroidアプリを実行したい場合に機能します。