サーバと通信するアプリの実装で、「自分のPCのWEBサーバ」と通信する場合はちょっと工夫が必要になるので要注意。

Android Studioのエミュレーター

エミュレーターから見て localhostは「エミュレーター自身」 になってしまう。

自分のPCのWEBサーバと通信する場合、Localhostではなくて http://10.0.0.2 に接続する。

追記

自分の環境を見直すと「 10.0.2.2 」で接続していました。

  • 10.0.2.2
  • 10.0.0.2

どちらが正解かわからなくなってきました。 ぜひどなたかフィードバックしてください !

WEBサーバ(PHP)

PHPのビルドインサーバを起動する場合、、、

1$ sudo php -S http://127.0.0.1:80/

にしてあげないといけない

  • sudoしないと80ポートが指定できない
  • localhostだとAndroidStudioのエミュレーターから見えない

のです。
これすごい落とし穴です。

たった1日で基本が身に付く! Androidアプリ開発超入門

中川 幸哉
出版社:技術評論社  発売日:2018-09-21

Amazonで詳細を見る