質問: 困っていること -------- 社内ネットワークに接続したPC(プロキシ経由でインターネットに接続可)に Visual Studio 2017をインストールしました。 Visual StudioからAndroidのエミュレータを起動し、試しにブラウザアプリを起動してみたところ、 エミュレータ内からインターネットに接続をすることができませんでした。 Androidエミュレータ内からインターネット、および社内ネットワークに接続をする方法を探しています。 やりたいこと ------- エミュレータでホストPCと同一のネットワーク設定を使用することはできないでしょうか。 もしくは、エミュレータからのネットワーク接続にプロキシを使用することはできないでしょうか。 (エミュレータの設定画面でネットワークに関する項目が見つかりませんでした) (ちなみに、現状ではテザリング等を含め、社内プロキシを経由せずにインターネットアクセスする、という選択肢はありません) エミュレータは、VS + Xamarin のインストール時に自動的にインストールされたものを使用しています。
回答: Visual Studioでは2種類のAndroidエミュレーターが使用できるようになっていますが、Xamarinのインストール時に自動的にインストールされるのは、Googleが提供するAndroid SDK付属の標準エミュレーターの方と思います。 現状、Visual Studioのインストーラーによって導入される標準エミュレーターでは、GUIによってプロキシー設定をすることができません(※)。コマンドプロンプトからコマンドのパラメーターによって指定する必要があります。 標準エミュレーターのコマンドは、デフォルトでは `C:\Program Files (x86)\Android\android-sdk\emulator` の下に入っているはずです(要確認)。この場所を環境変数Pathに加えて、コマンドプロンプトにおいて `emulator -avd -http-proxy :<ポート番号>` という書式で実行します。AVD名がわからなければ、 `emulator -list-avds` とコマンドを打てば一覧が出てきます。この方法で試してみてはどうでしょうか。 (※)余談ですが。実はまさにこの質問が投稿されたその日に、標準エミュレーターの更新版がリリースされていて、GUIによってプロキシー設定ができるようになりました(下図)。ただ、Android SDKを単体で管理していてこれを最新版に更新すればその機能を利用できるのですが、Visual Studioでは互換性の問題でAndroid SDKを最新にすることができないため、現状はコマンドによる指定しか方法がないようです。 !イメージ説明