Windows上のAndroid開発でLinux上のAndroidエミュレータを使用する方法

この記事は公開から1年以上経過しています。

Windows端末でVisual Studio 2022を使ってAndroid向けの.NET MAUIアプリを開発する際に、別のLinux上の端末で稼働するAndroidエミュレーターをリモートで使用する方法についての備忘録。

個人的な用途としては、LinuxのKVM上で稼働するWindowsゲスト上のVisual Studioから、高速なLinuxホスト上のAndroidエミュレータを利用する目的で行っています。

本エントリは2年ほど前に書いたVisual Studio 2019とXamarinによる開発記事でしたが、.NET MAUIやFultter開発でも同様にリモートのエミュレーターを利用することができるため、一部内容を修正して再投稿しました。
そのため画像や説明が一部古い部分もありますが、基本的にはほぼ同様となっています。


手順

  1. Linux側のAVDマネージャーでデバッグに使用する仮想デバイスを作成、起動する。
    file

    Play Store対応イメージではうまくリモート接続できない可能性があるようなので、先ずはPlay Store非対応のイメージを使用してみてください。私はこれでハマり、かなり時間を無駄にしました…。

  2. Windows側でコマンドプロンプトを開き、以下のコマンドを実行してAdbへのSSHポートフォワーディングを行う。

    ssh -NL 15555:127.0.0.1:5555 Linuxホストのユーザー名@LinuxホストのIPアドレス
  3. Windows側のVisual StudioメニューからツールAndroidAndroid Adb コマンドプロンプトでAdbコマンドプロンプトを開き、以下のコマンドを実行してポートフォワーディングされたAdbへの接続を行う(画像はVisual Studio 2019)。

    adb kill-server
    adb connect localhost:15555

    接続が成功すると、以下のように表示される。

    connected to localhost:15555

    Windows側でAdbデバイス列挙結果は以下の通り。

    C:\WINDOWS\system32>adb devices
    List of devices attached
    localhost:15555 device
  4. 上記手順が成功するとWindowsテスト上のVisual Studioのデバッグ開始ボタンに接続されているエミュレータ名が表示されるので、実行する。

    file

    デバッガが起動すると、以下のようにLinux側のAndroidエミュレータでWindows上で開発を行っている.NET MAUIアプリが実行される。
    file


参考ウェブサイトなど

  • Microsoft Docs
    Windows VM から Mac 上で動作する Android エミュレーターに接続できますか


以上です。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする