ShashlikでLinuxデスクトップ上にAndroidアプリを直接実行する方法

LinuxデスクトップでAndroidアプリを動かす方法は、日々新しいものが登場しています。その多くは、Androidを搭載した仮想マシンをインストールするか、Google Chromeの拡張機能を使ってAPKを読み込むというアプローチです。どちらも悪くない方法ですが、Linuxのエコシステムにはあまり馴染みません。
そこで登場したのが「Shashlik」です。VirtualBoxのインスタンスやブラウザを使わずに、AndroidアプリをLinuxデスクトップと並行して動作させることを目的とした新プロジェクトです。魅力的に聞こえますよね?ここでは、その導入方法をご紹介します。
インストール

Shashlikはパッケージとして配布されており、現在入手できるバージョンは0.9.3です。
Ubuntuの場合
最も簡単なのは、公式サイトから.debファイルをダウンロードしてダブルクリックでインストールする方法です。あるいは、ターミナルで以下のコマンドを実行しても構いません。
wget https://static.davidedmundson.co.uk/shashlik/shashlik_0.9.3.deb
.debパッケージファイルをダウンロードしたら、次はシステムにインストールします。
sudo dpkg -i shashlik_0.9.3.deb
インストール後にエラーが表示されることがあります。必ず起こるわけではありませんが、依存関係が正しく解決されていない場合に発生します。心配いりません。次のコマンド1つで簡単に修復できます。
sudo apt-get install -f
依存関係が修正されたら、先ほどのdpkgコマンドをもう一度実行して、パッケージを再インストールしてください。
Arch Linuxの場合
ShashlikはUbuntuだけでなく、Arch Linuxでも利用可能です。お好みのAURヘルパーでこのパッケージを指定すればOKです。インストールプロセスが進むと、.debファイルが展開され、自動的にシステムへインストールされます。
知っておくべきこと
第一に、Shashlikはまだ開発中であり、バージョン1.0にも達していないため、動作が非常に不安定な可能性があります。
第二に、Androidアプリは実行できても、Google関連のアプリは避けるべきです。Google Play Servicesはサポートされておらず、これに大きく依存するアプリはまったく動作しません。
第三に、Shashlikにはアプリストアが付属していません。このツールを使うには、必要なアプリのAPKを自分でダウンロードする必要があります。最も手軽なのは「APK Mirror」を利用することです。

注意: Shashlikが実行できるのは、x86版が存在するAPKファイルのみです。APK Mirrorからダウンロードする際は、必ずx86版を選んでください。ARM版のAndroidパッケージは現時点では動作しません。
仕組みはどうなっている?
Shashlikは、GoogleがAndroid SDK(Software Development Kit)に同梱しているAndroidエミュレーターを活用することで、Linuxデスクトップ上でのAndroidアプリ実行を実現しています。実際にアプリを起動する手順を見てみましょう。まずターミナルを開き、以下のコマンドを入力します。
cd /home/username/directory/where/apk/file/is

APKが保存されているディレクトリに移動したら、次のコマンドでファイルを実行します。
shashlik-run nameofpackage.apk name_of_app
コマンドを実行すると、スマートフォンのようなウィンドウが開き、その中で目的のアプリが起動するはずです。
Shashlikの特別なところとは?
Shashlikの素晴らしい点は、何かを一から再発明しようとしないところです。すでに存在する優れたツール群、つまりGoogleのAndroid SDKを最大限に活用しています。独自に改造されたAndroidランタイムにより、Shashlikは指定されたAndroidアプリを直接起動できます。

ランタイムにAPKファイルを指定すると、アイコンを検索して自動的に抽出してくれます。そのため、アプリを開いたときにタスクバーに見慣れたアイコンが表示されるのです。これは便利ですが、本当のキラーフィーチャーとなるのは、デスクトップやメニューにランチャーショートカットを作成できる機能でしょう。

この種のツール自体は決して新しい概念ではありません。2014年にはGoogle自身がランタイムを開発し、開発者と協力してAndroidアプリをChrome上で動かせるようにする取り組みを始めています。しかし、Shashlikの方が有望に思えるのは、Chromeの外側で本格的なAndroidアプリをそのまま実行できる点です。
注目すべきはChrome非依存であることだけではありません。開発者たちが大きな将来計画を抱えている点も見逃せません。長期的な目標は、AndroidをLinuxベースに可能な限り深く統合することです。具体的には、デスクトップ環境の通知システムへのフルアクセス、Androidアプリによるファイルシステムアクセスの改善、ウィンドウのリサイズ対応などが実現されるかもしれません。
まとめ
Shashlikは、AndroidアプリをLinuxデスクトップ上で直接実行するという点で非常に印象的なプロジェクトです。何より嬉しいのは、Chromeをシステムにインストールする必要がないこと。ローエンドやミドルレンジのPCでパフォーマンスに難のあるChromeを考えると、これは大きなメリットといえます。仕事でAndroidアプリが必要で、細かいチューニングに興味がない方にとっては、このプログラムは当たり外れがあります。バグも多く、特定のアプリが確実に動作する保証はありません。それでも、バグと付き合いながらでも動くものを手に入れたいのであれば、Shashlikは十分な可能性を秘めています。
あなたはLinux PCでどんなAndroidアプリを動かしたいですか?ぜひコメント欄でお聞かせください!
画像クレジット:Photobucket
-
Chrome拡張機能のAndroidエミュレーターを使ってPCでAndroidアプリを動かす方法
デスクトップPCやノートパソコンでAndroidアプリやゲームを試してみたいと思ったことはありませんか?きっと一度は考えたことがあるはずです。そのとき真っ先に浮かぶのが「Androidエミュレーター」ですが、実はもう一つの強力な選択肢があります。それが、ブラウザから直接、あるいはウェブサイトにアクセスするだけでAndroidアプリを実行できるという方法です。 この記事では、重いソフトをインストールすることなくChrome拡張機能で使えるAndroidエミュレーターを厳選してご紹介します。 1. Android Online Emulator Androidアプリを実行したり、Androidの
-
Windows 11でAndroidアプリを実行する方法|Amazon Appstoreの導入手順とサイドロード術
Windows 11のPCでもAndroidアプリが使えたら便利だと思いませんか?その夢はついに現実になりました。Windows 11では、サードパーティ製ソフトやエミュレーターを別途用意しなくても、Androidアプリを簡単に実行できます。鍵となるのが「Amazon Appstore」。Microsoft Storeからインストールすれば、厳選されたカタログの中からお気に入りのアプリやゲームを閲覧・インストールできるようになります。ただし注意点として、この機能はリリース当初、米国でのみサポートされていました。 スマートフォンだけでなくWindows PCでもアプリを活用したい——これは多く