ローカルマシンでWEBサーバを起動し、それをiPhoneシミュレータやAndroidエミュレータから閲覧したい場合があります。
iPhoneシミュレータはlocalhostで接続可能
そこにiPhoneシミュレータから接続する場合、localhostに対して接続すると閲覧できます。
http://localhost/
そういうわけで、ブラウザで閲覧しているのとほぼ同じ感覚で利用できます。
Androidエミュレータはlocalhostでは接続不可能
しかしながら、同じような感覚でAndroidエミュレータを使用しても、思い通りにはいきません。
http://localhost/
この通り、接続ができません。
Androidエミュレータ内の/etc/hostsでも、localhostは127.0.0.1に向いていますが、試しにIPでアクセスをしてみます。
http://127.0.0.1/
これもやはりダメです。
エミュレータからPCに接続するには、10.0.2.2に接続
調べたらすぐに出ました。
androidエミュレータからlocalhostへの接続
このブログによると、iPhoneシミュレータと違って、127.0.0.1はAndroidエミュレータ自身への接続になるということです。もしこれで接続できるとすれば「Android端末内でWEBサーバが実行されている場合」ということになるわけですね。
http://10.0.2.2/
接続できました!