利用thread和handle可以实现了,利用TCP的客户端想android发送数据,然后显示在textview上,但是,我在android上发送数据部分,有点问题,不知道是怎么回事,没有反应额··请高手看下了,弄了一下午额有点乱啊····
其实我android发送数据主要加的就是这两个部分:
send_btn.setOnClickListener(new Button.OnClickListener(){
@Override
public void onClick(View v) {
tmp = senddata_et.getText().toString();
send_flag = true;
}});
if(send_flag == true){
byteBuffer = tmp.getBytes();//byte[] bs = str.getBytes();//将string转byte
outputStream.write(byteBuffer, 0, tmp.length());
System.out.println(new String(byteBuffer,0,tmp.length()));
send_flag = false;
Message m2 = new Message();
//消息的标记GUINOTIFIER在前面定义的
m2.what = tcp_server.SENDOK;
//传送消息
tcp_server.this.mHandler.sendMessage(m2);
}
其他的部分代码没有问题的,下面是全部代码,希望有人可以看下:
package com.FJICC.lzm;
import java.util.ArrayList;
import java.util.Enumeration;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.Socket;
import java.net.ServerSocket;
import android.app.Activity;
import android.app.AlertDialog;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
public class tcp_server extends Activity{
private Button serverStart_btn;
private Button serverStop_btn;
private TextView receivedata_tv;
private Button setport_btn;
private EditText senddata_et;
private Button send_btn;
public int PORT = 8080;