🌏
【Android】Android EmulatorからローカルPCへアクセスする
前置き
REST APIやWebページにアクセスするようなAndroidアプリを作成するとき、ローカルPCにサーバーを立て、そこへアクセスしてテストするようなことはよくあると思います。
このときのアクセス方法をまとめています。
本題
環境
ローカルPCに何らかの形でHTTPサーバーを立てており、URLにGETするとJSONが返ってくるようなAPIを想定しています。
$ curl -X GET http://localhost:8080/API
{
"name":"hoge",
"age":255
}
問題
Android EmulatorからこのURLにGETしても(おそらく)アクセスできないでしょう。
これは、localhostがAndroid Emulator自身であり、ローカルPCではないことが原因です。
解決策
Android EmulatorはデフォルトでローカルPCとのネットワークブリッジを持っています。
以下のURLにGETすると問題なくGETできるはずです。
http://10.0.2.2:8080
POST等の他メソッドでも同様です。
まとめ
Android EmulatorからローカルPCへのアクセスは以下のURLから!
http://10.0.2.2
参考
Discussion