kazuakix の日記

Windows Phone とか好きです

Windows Phone 8.1 エミュレーターで Fiddler を使う

少し前に WP8.1 エミュレーターで Fiddler が使えずに諦めていたのですが、たまたま Stack Overflow を見ていると解決策が紹介されていました。

Fiddler の設定

[Tools]-[Fiddler Options] の Connections タブで [Fiddler listens port] を 8888 以外の数字 (8889 など) に変更し、[Allow remote computers to connect] を有効にします。

f:id:kazuakix:20140911001610j:plain,w393
 
続けてメイン画面の下欄でプロキシサーバー名として自分自身の IP を入力します。

f:id:kazuakix:20140911001616j:plain,w393

prefs set fiddler.network.proxy.RegistrationHostName 169.254.80.80

 
ここで指定するアドレスは Windows Phone エミュレーター用のポートのアドレスで 169.254.xxx.xxx のような番号になっていると思います。正確な番号は Fiddler の右上の [Online] アイコンにマウス オーバーすることで確認することができます。

f:id:kazuakix:20140911002621j:plain,w180
 

PC の設定

ここまで設定した後で一度 Fiddler を再立ち上げするのですが、その前にもう一度上記の画面を確認してください。

上の例のように IPv6 アドレスが表示されている場合は IPv6 アドレスを無効にします。

f:id:kazuakix:20140911003047j:plain,w240

特に IPv6 を使っていないのであれば、すべてのアダプタで無効にした方が確実だと思います。

ここで あらためて Fiddler を再立ち上げしましょう。
 

WP エミュレーターの設定

最後に Visual Studio から WP エミュレーターを起動します。

すぐにアプリをテストしたくなるのですが、ここでも まず先に IE の設定で [データセンサー による節約] をオフにしてやります。*1

f:id:kazuakix:20140911003438j:plain,w240

これでやっと Fiddler による通信内容のキャプチャができるようになりました。

*1:アプリからの通信を見たいだけなら不要かも?