On Blahfe

Hyper-VモードでLinux OSとAndroid OSを同時使用する

blog/frontendandroidsmartphonevisual-studio-emulator-for-androidsurface-bookandroid-emulator
thumbnail

Xamarinの開発環境を模索しています。普段はLinux/Hyper-V上でAPIを開発しているのですが、Hyper-VとAndroid Emulatorとの組み合わせがまだ整備されておらず一筋縄ではいかなかったのでその備忘となります。

PROBLEM

  • 普段の開発環境CentOS/Hyper-Vを変更することなく、Xamarinをつかいたい
    • CentOS/Hyper-V上にAPIサーバーをたてて、XamarinアプリからAPIをたたく構成
  • Android EmulatorはIntel HAXM+ホスト型Hypervisor前提のものが多い
    • VirtualBoxなどホスト型HypervisorだとVMがよくクラッシュしてつらい
      • なので、APIサーバーはHyper-Vでたてている
      • また、オフィス移動が多いのでネットワーク環境はおもにWi-Fi(無線LAN)を使用している

SOLUTION

というわけで、Hyper-Vでイメージ管理するVisual Studio Emulator for Android(VS Emulator)を使うことにしました。これで何もせずに解決かというそうではなく、まず前提としてネットワーク上の注意があります。

  1. VS EmulatorはHyper-VのNetwork AdapterをEthernet(有線LAN)しか使用できません。Wi-Fi(無線LAN)は使用できません
  2. VS Emulatorの各デバイス(Android VM)を初回起動させる際に、有線LANと無線LAN双方からネットワークにつなげていると失敗します

Hyper-VモードでLinux OS(VM)とAndroid OS(VM)を同時使用する方法

その上で、同時使用する方法ですが、先ほどネットワークの注意を考慮すると下記のような流れになります。

  1. Stop-VM CentOS 現在稼働しているLinux VMを停止します
  2. Disable-NetAdapter Wi-Fi 無線LANの接続を停止し、有線LANのみの接続にします
  3. VS EmulatorからAndroid VMを初回起動します、そうすると有線LAN用のvEthernetが作成されます
  4. Enable-NetAdapter Wi-Fi - 無線LAN、有線LAN、双方を接続します
  5. Start-VM CentOS - Linux VMを起動します

WRAPUP

Windows Subsystems for Linux等、Windowsの仮想化環境はまだ発展途上にあります。おそらく今回の対処方法は一時的なものに過ぎず、こうしたネットワーク上の注意を意識することなく解決できると思われます。しばし様子見です。

nabinno
Emacsianでアート好き、ランニング好きな@nabinnoが書いています
GitHub / X / LinkedIn / ネクイノ
blog/market

今後の成長分野:新たなテクノロジーの展望

テクノロジーの進化は、絶え間ない変化の中で私たちの日常を塗り替えてきました。時には経済的な危機が、新たな可能性を切り拓く契機となることもあります。そこで、過去のリセッション期に生まれたテクノロジーの足

market-trendrecession
blog/organization

ATKerneyの課題解決パターンの魅力的な探求

ATKerneyの課題解決パターン は、課題の本質を見極め、効果的な戦略的構造化を通じて解決策を導き出す手法にフォーカスしています。この冒険の旅は、解決者と協力者たちが心を一つにし、課題に立ち向かう様

problem-solvingatkerney
blog/market

就職氷河期とは何だったのか

私はいわゆる就職氷河期世代です。周囲から時折漏れ聞こえる不平のような言葉がありますが、それを単なる不平として片付けるのはもったいない気がします。できれば、その中に新しい視点を見つけ、次のチャンスへ繋げ

labor-economicsrecessionemployment-ice-age