0

アンドロイドにクライアントサーバーチャットアプリケーションを実装したい。このコードを試しました。ただし、サーバーにデータを送信するだけで、データは取得されません。

アプリケーションはデータを継続的に転送する必要があります。

@Override
public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    try
    {
        socket = new Socket("192.168.50.11", 2001);

        out = new PrintWriter(socket.getOutputStream());
        reader = new BufferedReader(new InputStreamReader(socket.getInputStream()));

        out.print("hello!");
        out.flush();

    this.reciveThread = new Thread(new reciveClass());
        this.reciveThread.start();
    }
    catch (Exception e)
    {
        Log.d(appTag, e.toString());
    }

}

class reciveClass implements Runnable
{
    public void run()
    {
        try
        {
            String readed;
            while (true)
            {
                try
                {
                    if ((readed = reader.readLine()) != null)
                    {
                        final String read = readed;
                        handler.post(new Runnable()
                        {
                            @Override
                            public void run()
                            {                                    
                                TextView tv = (TextView) findViewById(R.id.messageText);
                                tv.setText(tv.getText() + "\n" + read);
                            }

                        });
                    }
                }
                catch (Exception ee)
                {
                    Log.d(appTag, ee.toString());
                }
                Thread.sleep(100);
            }
        }
        catch (Exception e)
        {
        }
    }
}

問題はどこだ?ありがとう。

4

0 に答える 0