質問: 初心者です。 Android同士で通信ができるアプリを作ろうと考えています。 ネットで色々調べる限り、通信にはPHPを使ってサーバーと通信するらしい、ということはわかったのですが、いまいち理解できないことがあります。 1.Androidアプリの方からphpのプログラムを配置しているurlにアクセスすると、 PHPが動作してデータベースからデータをアプリに送るのでしょうか? 2.その場合、単純にphpのプログラムが配置されたurlをwebサイトなどで表示させた場合どうなるのでしょうか?普通にwebサイトのように何かが表示される? 3.通信に全くの初心者なのでサーブレット・JSPの勉強をしていたのですが、これらで通信するのは一般的では無いのでしょうか?最初はサーブレット・JSPでの通信を考えていたのですが、 Javaが動くレンタルサーバーがほとんど無いですし、Tomcatを自分からは再起動出来ない等、制約が多い気がして、PHPでやるしかないのかな、と思いました。。
回答: どういうアプリなのかはっきりしないので、たとえばチャットのようなものと考えると、 > > 1.Androidアプリの方からphpのプログラムを配置しているurlにアクセスすると、 > > PHPが動作してデータベースからデータをアプリに送るのでしょうか? > > > そういう認識で問題ないと思います。仮にJavaサーブレットで組んだとしても、サーブレットがデータベースアクセスをして、何らかのデータをアプリに返す、と考えてください。 > > 2.その場合、単純にphpのプログラムが配置されたurlをwebサイトなどで表示させた場合どうなるのでしょうか?普通にwebサイトのように何かが表示される? > > > 通常、こういった目的用に作ったプログラムは単にurlをWebブラウザのアドレス欄に入力しても何も起こらないか、エラーが表示される場合が多いと思います。というのは呼び出し側でなんらかのパラメータを指定して初めて目的に沿った動作をすることが多いからです。 もちろん、パラメータなしで動作するphpプログラムやurlに引数を渡して動作させることが可能だと、何らかの出力が返ることになりますので、Webブラウザでも表示できると思います。 ただWebサイトとして表示できるような出力情報を返すように作っていないと、単なるテキストの羅列(もしくはテキストとして表示できない文字があると文字化けした情報)が表示されることになります。 > > 3.通信に全くの初心者なのでサーブレット・JSPの勉強をしていたのですが、これらで通信するのは一般的では無いのでしょうか? > > > そういうことはないと思います(JSPは今回の目的にはあまり役に立たない気がしますが)。レンタルサーバと言ってもいわゆるホームページ公開をメインとしているサーバだと自作のプログラムを置くのにもかなり制限があると思います。サービスを公開することをメインとしたレンタルサーバだとJavaを使えるところも存在します。探せば無料レンタルサーバでもいろいろ見つかります。