У меня есть приложение для Android-клиента и серверная программа на ПК. В клиентском приложении я запускаю новый поток в onCreate() моей активности. В этом потоке существует бесконечный цикл, который отправляет сообщение серверу. Но иногда есть задержка до 5 секунд. Вот код стороне клиента:Задержка программирования приложений для Android
EDIT
new Thread(new Runnable() {
public void run() {
Socket socket = null;
PrintWriter out = null;
try {
socket = new Socket(ip, 1755);
out = new PrintWriter(socket.getOutputStream(), true);
} catch (IOException e) {
e.printStackTrace();
}
while(true) {
if(socket != null) {
out.println(msg);
}
}
}
}).start();
Теперь сообщение не доставляется.
Вы действительно хотите создать сокет в цикле. Почему бы не создать один раз, а затем отправить в цикле, а затем закрыть его? – jgm
Вы проверили мой ответ? – Krish
@Krish Да, я просто проверил ваш ответ. Теперь я хочу отправлять сообщения всякий раз, когда пользователь прикасается к экрану. Итак, я просто позвоню sendMessage() внутри onTouchEvent()? –