Android用のP2Pチャット/共有アプリケーションを開発しています。次のコードは UDP パケットを受信するためのものですが、最初のメッセージ/パケットのみが受信されて表示されます。(送信コードに問題はありません。) 以降のチャットメッセージが表示されません。while ループは、chahistory.setText(new String.... が実行された後に終了するようです。eg:chathistory.setText("test"); は実行されません。誰かエラーを指摘できますか?例外はスローされません。
public void receive() throws Exception
{
(new Thread(new Runnable() {
@Override
public void run() {
try
{
ds1=new DatagramSocket(7777);
//chathistory.setText("Holding the port...");
while(true)
{
DatagramPacket p = new DatagramPacket(buffer, buffer.length);
ds1.receive(p);
chathistory.setText(new String(p.getData(), 0, p.getLength()));
chathistory.setText("test");
}
}
catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} })).start();
}