0

リモートサーバーとの永続的な接続のために、Galaxy SII用の簡単なアプリケーションを作成しました。5 秒間 1 でデータを送受信します。アプリケーションが動作している間、誰も私に電話することはできません。ネットワークは彼に答えます-対話者は利用できません。K-9 のようなメール クライアントを使用している場合も同じことが起こりました。GPRS 接続でも 3G 接続でもかまいません。

この問題 (つまり、通常の着信電話接続の問題) を回避するためのインターネット アプリケーションを構築するための主なルール (あるとすれば?) は何ですか?

(リモートサービスで)データを送信するための私の通常のコードは次のようなものです:

While (condition)
{
try {
Thread.sleep(500);
} catch (InterruptedException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}

try {
    out.write(data + "\n");
    out.flush();
} catch (InterruptedException e) {
    e.printStackTrace();
}
}

よろしく、 Artik

4

1 に答える 1

0

まず、 5秒間待ちたい場合は、0.5秒ではThread.sleep(5000); なく 使用する必要があります 。Thread.sleep(500);

Timer次に、との代わりにをThread.sleep()使用してデータをサーバーに送信することを検討してくださいwhile(condition)

上記の提案でコードを変更した後、からテストして電話emulatorをシミュレートしてみてください。

于 2013-02-18T20:47:33.130 に答える