get要求をreqularly送信してサーバーをリッスンする関数を記述したいとします。最初の要求から応答が受信されるまで、次の要求はサーバーに送信されません。これをシミュレートするために、私は5回サーバに連続したGETリクエストを送信し、次のコードを記述します。連続取得要求の送信方法
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.main);
TextView tv = new TextView(this);
for (int i = 0; i < 5; i++)
{
tv.setText(retrieve("http://www.mydomain.com/http.php?key=" + i));
setContentView(tv);
}
}
「文字列検索(文字列のURL){...}」この場合は、URLの内容を返す関数であります以下のPHPファイルで送信された数だけ(「http.php」):私は私のAndroidアプリ上の値を参照するには、1秒睡眠を置くものの
<?php
sleep(1);
echo $_GET['key']+1;
?>
、私が見る唯一のものは、いくつかの秒後に「5」であります。これらの5つのリクエストはasynですか、それとも連続しているのですか、別の問題がありますか?
をしかし、私はそれがsynchoronusになりたい、Iサーバーから最初の応答が受信されるまで、2番目の要求を送信すべきではありません(そうですか?)。したがって、このようなループはOKですか? – Mehmed
私があなたに与えたオプションはお勧めです。コードを読めば、メソッドonPostExecuteを見ることができます。これは要求が完了したときに呼び出されるため、必要に応じて機能します。 スレッドを使用してループを作成することもできます: –
ソリューションをありがとうございました。それはあなたが言ったように最善の方法です...私はまた、サーバーのリスニングについて考えていますか?私はこのHTTP取得が本当の解決策ではないと思う。 – Mehmed