WSL(Windows Subsystem for Linux)のUbuntu環境で開発したExpoやReact Nativeアプリを、Windows側のAndroid Studioエミュレーターで動作させるための設定手順を解説します。
この作業の鍵は、「WSLからWindowsのエミュレーターを操作できるようにする」ための橋渡し(ADB接続)を行うことです。
事前準備と必要なもの
以下の環境が整っていることを確認してください。
- Windows:
Android Studio がインストール済みで、エミュレーター(Pixelなどの仮想デバイス)が作成されている。 - WSL:
Ubuntuがインストールされ、Node.js/npm/Expo CLIなどの開発環境が整っている。 - SDKの場所:
Windows側の Android SDKのパス を控えておく。- 例:
C:\Users\<あなたのユーザー名>\AppData\Local\Android\Sdk - WSLでの表記:
/mnt/c/Users/<あなたのユーザー名>/AppData/Local/Android/Sdk
- 例:


WSLにSDKの場所を教える(環境変数の設定)
WSLは、Android SDKがどこにあるかを知りません。
まず、SDKの場所を教えるための環境変数を設定します。
設定ファイルを開く
WSLのターミナルで、設定ファイル(.bashrc)を開きます。
nano ~/.bashrc環境変数を追記する
ファイルの一番下に、以下の2行を追記します。<ユーザー名> は、あなたのWindowsのユーザー名に置き換えてください。
(記録したAndroid SDK LocationのUser以下の内容です。)
# Android SDKのパスを設定
export ANDROID_HOME="/mnt/c/Users/<ユーザー名>/AppData/Local/Android/Sdk"
# ADB実行ファイル(platform-tools)の場所をPATHに追加
export PATH="$PATH:$ANDROID_HOME/platform-tools"【解説】
ANDROID_HOME:
SDK全体の住所を定義しています。PATH:adbなどのコマンドを、どのディレクトリを探せば見つかるかをシステムに教えています。
設定を保存し反映
source ~/.bashrc
ファイル名の問題を解決する(シンボリックリンク作成)
WindowsのADBファイルは adb.exe という名前ですが、Linux(WSL)は adb という拡張子のない名前のファイルを探します。
そこで、WSLが探すファイル名で、本物のファイルにたどり着くための「近道(シンボリックリンク)」を作成します。
platform-tools ディレクトリへ移動
環境変数で設定した、ADBの実行ファイルがある場所へ移動します。
cd /mnt/c/Users/<ユーザー名>/AppData/Local/Android/Sdk/platform-tools/シンボリックリンクを作成
adb.exe にリンクする adb という名前の「近道」を作成します。
sudo ln -s adb.exe adb【解説】
sudo: 管理者権限で実行します。ln -s: シンボリックリンクを作成するコマンドです。adb.exe: 本物のファイル(リンク元)。adb: WSLが探すファイル名(リンク名)。
リンクの確認
リンクが正しくできたかを確認します。
ls -l adbエミュレーターの起動と接続テスト
これで、WSLからエミュレーターへ接続するための土台が完成しました。
エミュレーターを起動
Windows側で Android Studio を開き、エミュレーター(Pixelなどの仮想デバイス)を起動しておきます。
ADB接続の確認 (WSL)
WSLのターミナルで、エミュレーターが認識されているかを確認します。
adb devices
出力例:
以下のように、エミュレーター名(例: emulator-5554)が表示されていれば成功です。
List of devices attached
emulator-5554 deviceExpoプロジェクトを実行する場合
プロジェクトディレクトリに戻り、Expoを起動してエミュレーターにアプリを開きます。
cd <あなたのプロジェクトのディレクトリ>
npx expo startMetro Bundlerが起動したら、キーボードの a を押してAndroidエミュレーターで開きます。
Windowsでcodexを使用する場合、V0.53.0では、Windowsでのサンドボックス制限が行われ、approvalでの設定内容が変更となりました。
(V0.55.0では元に戻っている模様)
そこで、WindowsでcodexとExpoを使用して、バイブコーディングでモバイルアプリを作成する場合に、WSLを使用する場合が出てきています。
補足: WindowsでAndroid Studioとエミュレーターを準備する手順

この手順は、WSLから接続する土台となる、Windows側の環境を整えるためのものです。
Android Studio のインストール
Android開発に必要なSDK(ソフトウェア開発キット)やツール、エミュレーターを管理する統合開発環境(IDE)をインストールします。
ダウンロード
- GoogleのAndroid Studio 公式サイトから、最新版のインストーラーをダウンロードします。
インストールウィザードの実行
- ダウンロードしたインストーラーを実行します。
- インストールウィザードでは、基本的に「Next」または「次へ」を押し進めます。
- 「Choose Components」の画面では、「Android Virtual Device (AVD)」と「Android SDK」の両方にチェックが入っていることを確認してください。
- インストールが完了したら、「Start Android Studio」にチェックを入れたまま完了します。
SDKの設定(初回起動時)
- Android Studioが初めて起動すると、追加のSDKコンポーネントをダウンロードするウィザードが始まります。
- ここでも、特にこだわりがなければ「Next」や「Finish」を押し進め、必要なAndroid SDK Platform、SDK Build-Tools、Android Emulatorなどのツールが自動でダウンロードされるのを待ちます。
📱 Android エミュレーターの作成と起動
エミュレーターは、スマートフォン実機がなくてもアプリの動作を確認できる仮想デバイスです。
バーチャルデバイスマネージャーの起動
Android Studioのメイン画面(またはプロジェクトが開いている画面)中央のMore Actionをクリックし、バーチャルデバイスマネージャー(Virtual Device Manager)を開きます。
新しい仮想デバイスの作成 (AVD)
デバイスマネージャーが開いたら、左上の「Create device」(デバイスを作成)ボタンをクリックします。

- Select Hardware (ハードウェアの選択):
- 「Phone」カテゴリの中から、「Pixel」など、あなたが使いたいデバイス(例: Pixel 8)を選択し、「Next」を押します。
- System Image (システムイメージの選択):
- アプリが動作するAndroidのOSバージョンを選びます。通常は最新の安定版(例: Tiramisu (API Level 33) や UpsideDownCake (API Level 34))を選びます。
- ダウンロードされていないOSイメージは、横にある「Download」リンクをクリックしてダウンロードします。
- ダウンロード後、そのOSイメージを選択し、「Next」を押します。
- AVD Name (仮想デバイス名):
- 名前を確認し、「Finish」を押すと、仮想デバイス(エミュレーター)が作成されます。
エミュレーターの起動
デバイスマネージャーの一覧に作成した仮想デバイスが表示されます。
- そのデバイスの右側にある「再生(▶️)ボタン」をクリックします。
これで、数秒から数十秒後、Windows上にAndroidスマートフォンの画面が別ウィンドウで立ち上がります。これが Android エミュレーターです。

このエミュレーターが起動した状態で、WSL側に戻り、前述の「WSLからの接続手順」を進めてください。
