読者です 読者をやめる 読者になる 読者になる

nuits.jp blog

C#, Xamarin, WPFを中心に書いています。Microsoft MVP for Visual Studio and Development Technologies。なお掲載内容は個人の見解であり、所属する企業を代表するものではありません。

Xamarin.Formsを認証プロキシ環境でビルドする

またお前か認証プロキシめ。。。

って感じで、Xamarin for Visual Studioを、認証プロキシ環境ではまりました。
はまったのは現在のところ以下の2点。

  1. インストーラAndroid SDKがインストールできない
  2. 手動でAndroid SDKを入れても、Xamarin.Formsをビルドできない

特に後者が致命的で、「android_m2repository_r22.zip」がダウンロードできないので、手動で配置してねってエラーがでるんですが、配置してもビルドできませんw

これと同じです。
stackoverflow.com

そう言うわけで、本エントリーではローカルプロキシにFiddlerを立てて、プロキシ認証をFiddlerに代替させることで回避する方法を紹介します。

前提条件

本エントリーは、Xamarin.Formsを認証プロキシ環境下でビルドできるようにする点に絞っています。
ここの方法でやっても、Android SDKのインストールには失敗しました。。。
認証プロキシ環境でのXamarin環境構築方法は近いうちにまとめます。

Fiddlerとは

一言でいって、プロキシサーバです。
ネットワークプログラミングをする場合などに、通信内容を覗いたり、リクエストやレスポンスをいじったりできる、一度覚えたらこれなしでは生きていけない素晴らしいアプリケーションです。
元々はMicrosoftの人が作っていたらしいですが、現在はMSからは独立していて、別途開発を継続しているようです。

今回はこれを使って、HTTPヘッダを改ざんしてプロキシの認証トークンを突っ込むことで、プロキシの認証ステップを回避します。

設定方法

具体的な方法は以下をご覧ください。

qiita.com

Xamarin.Formsをビルドする

ではVisual Studioを起動して、Xamarin.Formsをビルドしてください。
ビルドが完了するまでFiddlerは起動したままにしておいてください。

しばらく待つと無事ビルド完了するはずです。
ビルドが完了したらFiddlerは終了して問題ありません。

一度ビルドが完了したら、次回以降はFiddlerの起動は不要です。
(何らかのアップデート時は必要になる可能性がありますが)

以上です。 ビルドできましたか?

では、よいXamarinライフを!