Ubuntuを使っていると「あのAndroidアプリ、PCでもそのまま動かせたらいいのに」と思う場面はありませんか。ゲーム・SNS・音楽アプリなど、スマホにしか無いアプリは意外と多いものです。
結論からいうと、Waydroid というツールを入れると、UbuntuデスクトップでAndroidアプリをほぼネイティブの感覚で動かせます。一般的なAndroidエミュレーター(仮想マシン型)と違い、LinuxカーネルのAndroid互換機能を直接使うため軽快に動くのが特長です。
本記事では、公式リポジトリ(repo.waydro.id)と Ubuntu 24.04 / 22.04 の公式Dockerイメージを実際に叩いて取得した一次データをもとに、インストールから初期化・APK導入・Google Play対応・エラー対処までを丁寧に解説します。古い手順をなぞった日本語記事が多いなか、本記事は2026年6月14日時点の実測値で書いています。
この記事のポイント
- WaydroidはAndroidを
LXCコンテナとして動かす仕組み。エミュレーターより軽い - 公式APTリポジトリの最新版は
waydroid 1.6.2、GitHubのソース最新リリースは1.6.3(実取得で確認) - リポジトリのコードネームは
noble(24.04)/jammy(22.04)。古い記事の「focal固定」は不要 - 依存は
lxc・iptables・pipewire-pulseなど。Binder系(python3-gbinder等)はWaydroidリポジトリが供給 - APKは
waydroid app install、Google Playはwaydroid init -g GAPPSで導入
目次
- Waydroidとは何か
- 動作要件を確認する
- 最新バージョンを実データで確認する
- Waydroidのインストール手順
- Androidイメージの初期化と起動
- APKのインストールと基本的な使い方
- Google Playストア(GApps)を使う
- よくあるエラーと解決策
- まとめ
Waydroidとは何か
Waydroidは、LinuxカーネルのAndroid互換機能(Binder=Androidのプロセス間通信の仕組み)を使って、Ubuntuなどのデスクトップ上でAndroidシステム全体をLXCコンテナ(軽量なコンテナ実行基盤)として動かすツールです。
従来のAndroidエミュレーター(BlueStacksやAVDなど)はハードウェアを丸ごと仮想化するため重く、ホストのGPUやオーディオとの連携も複雑でした。Waydroidはそこが大きく異なります。
- エミュレーターではなくコンテナ:ハードウェアを仮想化しないので消費リソースが少ない
- Wayland/X11に直接表示:UbuntuのデスクトップにAndroidアプリのウィンドウが出る
- Android 13ベース:比較的新しいAndroidで動作する
- オープンソース:GitHubで開発されており(GPL-3.0、11,500★超)、無料で使える
前提:実機Linuxが必要です
Waydroidはbinder_linuxカーネルモジュールとLXCを使うため、カーネルを共有しないコンテナの中や、binder無しの環境では原則として「起動」できません。本記事のバージョン確認・依存解決・インストールはDocker(ubuntu:24.04)で実測していますが、実際にAndroid UIを表示する工程は実機のUbuntuデスクトップで行ってください。
動作要件を確認する
インストール前に、まず動作環境を確認しましょう。チェックすべきは大きく4つです。

手順1:カーネルのbinderモジュールを確認する
Waydroid最大の要件がLinuxカーネルにbinder_linuxモジュールが含まれていることです。Ubuntuデスクトップ版(22.04以降)ではlinux-modules-extraパッケージにbinderが含まれています。
filename: /lib/modules/6.8.0-xx-generic/kernel/drivers/android/binder_linux.ko
license: GPL v2
description: Android Binder Driver
author: Google, Inc.
# ↑ このように表示されれば binder が使える
binderが見つからない場合
エラーが出たら、次のコマンドでlinux-modules-extraを追加します。
sudo apt install linux-modules-extra-$(uname -r)
インストール後、再起動してからもう一度確認してください。
手順2:Wayland環境を確認する
wayland
# Ubuntu 22.04以降のGNOMEはデフォルトでwayland
$ echo $WAYLAND_DISPLAY
wayland-0
Ubuntu 22.04以降のGNOMEデスクトップはデフォルトでWaylandを使います。x11と表示された場合でも、WaydroidはDISPLAY環境変数経由でX11にも表示できます。
最新バージョンを実データで確認する
ここがこの記事の核心です。多くの日本語記事が古いバージョン(1.4系など)のまま止まっていますが、公式APTリポジトリとGitHubを実際に叩いて、2026年6月14日時点の最新版を取得しました。

結果はこうでした。
- 公式APTリポジトリ(
repo.waydro.id)の最新版:waydroid 1.6.2(noble・jammy 共通で各8バージョンが公開済み) - GitHubのソース最新リリース:
1.6.3(2026-05-28 公開)
つまり、apt で入る版(1.6.2)はGitHubのソース最新(1.6.3)より1リリース分だけ後追いになっています。日常的に使うなら apt 版の 1.6.2 で十分です。さらに新しい機能を試したい人だけ、GitHubからソース導入を検討すればよい、という温度感がデータから読み取れます。
リポジトリのメタ情報を見るとOrigin: mrcyjanek(Czarek Nakamoto’s repo)、対応コードネームはnoble/jammyでした。公式のセットアップスクリプトもUBUNTU_CODENAMEをそのまま使う作りで、「focalで固定」という古い手順は今は不要です(後述)。
Waydroidのインストール手順
Waydroid本体はUbuntu標準リポジトリには含まれていません。公式リポジトリ(https://repo.waydro.id/)を追加してインストールします。ここではUbuntu 24.04公式Dockerイメージで実際にリポジトリ追加からapt-get install -y waydroidまで通した実ログを見せます。
検証環境
- 実行環境:Docker
ubuntu:24.04(arm64)でリポジトリ追加〜インストールを実行 - 検証日:2026-06-14
- インストールされた本体:
waydroid 1.6.2
手順3:依存パッケージのバージョンを把握する
Waydroidはlxcなどいくつかのパッケージに依存します。Ubuntu 22.04と24.04で、Ubuntu本体が提供する依存パッケージの実バージョンを比較しました。

WaydroidはArchitectureがallのため、22.04でも24.04でも入る本体は同じ1.6.2です。差が出るのは下回りで、たとえばlxcは22.04が1:5.0.0~git2209、24.04が1:5.0.3-2ubuntu7.2でした。基本的にはより新しい依存が揃う Ubuntu 24.04 LTS を推奨します。
Binder系パッケージはどこから来るのか
python3-gbinder・libgbinder・libglibutilはUbuntu本体には存在せず、Waydroid公式リポジトリ側から供給されます(実測で python3-gbinder 1.3.1 / libgbinder 1.1.43 / libglibutil 1.0.80)。だからこそリポジトリ追加が必須なのです。
手順4:リポジトリを追加する
公式が配布するGPG鍵を取得し、自分のUbuntuのコードネームでリポジトリ行を書きます。コードネームは$UBUNTU_CODENAMEを使えば自動で正しい値(24.04ならnoble)が入ります。
noble
# GPG鍵を取得して保存
$ curl -sSf https://repo.waydro.id/waydroid.gpg \
| sudo tee /usr/share/keyrings/waydroid.gpg > /dev/null
# リポジトリ行を追加(コードネームは自動で noble に)
$ echo “deb [signed-by=/usr/share/keyrings/waydroid.gpg] \
https://repo.waydro.id/ $UBUNTU_CODENAME main” \
| sudo tee /etc/apt/sources.list.d/waydroid.list
$ sudo apt update
Get:5 https://repo.waydro.id noble InRelease [1309 B]
Get:6 https://repo.waydro.id noble/main all Packages [3708 B]
Fetched 5017 B in 1s (3458 B/s)
古い記事の「focal」は今は不要
かつてWaydroidのリポジトリはFocal(20.04)向けしか無く「24.04でもfocalと書く」という回避策が広まりました。現在はnoble(24.04)・jammy(22.04)が正式に用意されているので、自分のコードネームをそのまま指定すればOKです。
手順5:Waydroidをインストールする
準備ができたらインストールします。実際に通したログがこちらです。

Setting up pipewire-pulse (1.0.5-1ubuntu3.2) …
Setting up libgtk-3-0t64:arm64 (3.24.41-4ubuntu1.3) …
Setting up polkitd (124-2ubuntu1.24.04.3) …
Setting up waydroid (1.6.2) …
Waydroid is not initialized, run “waydroid init”
Created symlink …/waydroid-container.service
$ waydroid –version
1.6.2
インストールが終わるとwaydroid --versionは1.6.2を返し、systemdサービスwaydroid-container.serviceが登録されました。なお、この時点ではまだ未初期化なので「run "waydroid init"」と案内が出ます。
Androidイメージの初期化と起動
本体のインストールが終わったら、次はAndroidシステムイメージのダウンロードと初期化です。正直、ここが一番時間のかかるステップです。

手順6:Waydroidを初期化する
$ sudo waydroid init
[..] Downloading images …
[..] pulling: system.img …
[..] pulling: vendor.img …
[..] Initialization complete
回線速度によりますが、初回のwaydroid initは10〜20分程度かかります。約1.5GBのシステムイメージとベンダーイメージをダウンロードするためです。
手順7:Waydroidセッションを起動する
$ sudo systemctl start waydroid-container
# Android UIを全画面で表示
$ waydroid show-full-ui
waydroid show-full-uiを実行すると、UbuntuのデスクトップにAndroidのホーム画面が表示されます。初回起動は少し待ちますが、2回目以降はすばやく立ち上がります。起動状態はwaydroid statusで確認できます(Session: RUNNING / Container: RUNNINGになっていればOK)。
公式ドキュメントにもデスクトップ向けのインストール手順がまとまっています。ディストリ別の手引きも揃っているので、Ubuntu以外の人も一度見ておくとよいでしょう。

APKのインストールと基本的な使い方
APKファイルをインストールする
Google Playなしの環境では、APKファイルを直接インストールしてアプリを追加します。
$ waydroid app install ~/Downloads/FDroid.apk
Success
# インストール済みアプリを確認
$ waydroid app list
org.fdroid.fdroid F-Droid
com.android.calculator2 Calculator
F-Droid(オープンソースアプリのマーケット)を入れておくと、Google Playなしでも多数のアプリを入手できます。特定アプリの直接起動はwaydroid app launch org.fdroid.fdroidのようにアプリIDを指定します。
Androidのプロパティ情報を確認する
13
# Android 13ベースで動作していることを確認
Google Playストア(GApps)を使う
標準のwaydroid initだとGoogle Playストアは含まれません。GApps(Googleモバイルサービス)を使いたい場合は、初期化時に-g GAPPSを指定します。
注意:GAppsの利用条件
GAppsを使う場合はGoogleの利用規約に同意する必要があります。また初回起動後にGoogleアカウントでログインし、デバイスを認証(Play Protect認証)する手順が別途必要です。
$ sudo waydroid init -g GAPPS -f
[..] Downloading system image with GApps …
[..] Initialization complete
デバイス認証(Play Protect認証)を通す
$ sudo waydroid shell
android# sqlite3 /data/*/com.google.android.gsf/databases/gservices.db \
“select * from main where name = ‘android_id'”
android_id|xxxxxxxxxxxxxxxx
取得したandroid_idをGoogleの「デバイス未登録」ページに入力して認証を申請します。反映には10〜20分かかることがあります。
よくあるエラーと解決策
エラー1:FAILED TO OPEN /dev/binder
原因:カーネルにbinder_linuxモジュールが読み込まれていない(コンテナ内や、binder無しカーネルでよく起きます)。
解決:
$ ls /dev/binder
/dev/binder
# 永続化するにはモジュール設定ファイルを追加
$ echo “binder_linux” | sudo tee /etc/modules-load.d/waydroid.conf
エラー2:Container failed to start
原因:前回のセッションが正常終了していない、またはLXCコンテナの状態が壊れている。
解決:
$ waydroid status
Session: STOPPED
Container: RUNNING
$ waydroid show-full-ui
エラー3:ウィンドウが表示されない(Waylandセッション)
原因:WAYLAND_DISPLAYがWaydroidに正しく渡っていない。
解決:環境変数を明示して起動します。
うまくいかないときは、開発状況やIssueをGitHubで確認するのが早道です。リリースの更新も活発で、最新版が1.6.3まで来ていることが分かります。

まとめ
本記事では、WaydroidをUbuntuにインストールしてAndroidアプリを動かす手順を、公式リポジトリとDockerの実データで解説しました。
- Waydroidはエミュレーターではなくコンテナ技術でAndroidを動かすため軽量
- apt版の最新は waydroid 1.6.2、GitHubのソース最新は 1.6.3(2026-06-14 実取得)
- リポジトリのコードネームは noble(24.04)/ jammy(22.04)。「focal固定」はもう不要
- 依存は lxc・iptables・pipewire-pulse 等。Binder系(python3-gbinder 1.3.1 ほか)はWaydroidリポジトリが供給
- APKは waydroid app install、Google Play は waydroid init -g GAPPS で導入
自宅PCだけでなく、VPS上のLinux環境を本格的に運用してみたい方は、こちらも参考にしてください:



コメント