服务器端用java语言,功能是键盘录入数据,然后用socket发送给安卓手机端。客户端是android程序,当运行服务器键盘输入一个数据后,在手机程序上显示不了,不知道问题出在哪里。希望各位精通这方面的给解答一下代码哪里出现问题了。
服务器端的java代码
public class chutian {
public static void main(String[] args) throws IOException
{
ServerSocket ss=new ServerSocket(30000);
Socket s=ss.accept(); //阻塞式
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw=new BufferedWriter(new OutputStreamWriter
(s.getOutputStream()));
String line=null;
while ((line=br.readLine())!=null){ //阻塞式
if ("over".equals(line)) {
break;
}
bw.write(line);
bw.newLine();
bw.flush();
}
s.close();
}
}
下面是androidDemo
public class MainActivity extends Activity {
EditText show;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
show=(EditText) findViewById(R.id.et1);
final Handler handler=new Handler()
{
public void handleMessage(Message msg)
{
if (msg.what==0x123) {
show.setText(msg.obj.toString());
}
}
};
new Thread()
{
public void run()
{
try{
Message msg=new Message();
msg.what=0x123;
Socket socket = new Socket("192.168.0.104",30000);
BufferedReader br = new BufferedReader(
new InputStreamReader(socket.getInputStream()));
String line=null;
while ((line=br.readLine())!=null) {
msg.obj=line;
handler.sendMessage(msg);
}
br.close();
socket.close();
}catch(IOException d){
d.printStackTrace();
}
}
}.start();
}
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。