📄 mainactivity.java
字号:
package com.tobacco.phonetest;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.PrintWriter;import java.net.Socket;import java.net.UnknownHostException;import android.app.Activity;import android.os.Bundle;import android.os.Handler;import android.util.Log;import android.view.Menu;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;public class MainActivity extends Activity implements OnClickListener,Runnable{ private Button button; private Button clear; private EditText editText; private TextView tv; private Socket socket; private PrintWriter pw; private BufferedReader br; //private InputStream is; private Handler handler; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); handler=new Handler(); button=(Button)findViewById(R.id.button); clear=(Button)findViewById(R.id.clear); button.setOnClickListener(this); clear.setOnClickListener(this); editText=(EditText)findViewById(R.id.edittext); tv=(TextView)findViewById(R.id.textView); try { //socket=new Socket("tobacco5648.xicp.net",5648); socket=new Socket("192.168.137.1",5648); //socket=new Socket("www.baidu.com",80); } catch (UnknownHostException e) { // TODO Auto-generated catch block e.printStackTrace(); Log.e("socket","unknown host"); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); Log.e("socket","io execption"); } if(socket==null){ Log.e("socket","null"); } else try { pw=new PrintWriter(socket.getOutputStream()); br=new BufferedReader(new InputStreamReader(socket.getInputStream(),"gbk")); String remote=socket.getInetAddress().getHostAddress(); String self=socket.getLocalAddress().getHostAddress(); tv.setText("connected!"+"\r\n"+"remote:"+remote+"\r\n"+"local:"+self+"\r\n"); //is=socket.getInputStream(); if(pw!=null&&br!=null){ new Thread(this).start(); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.activity_main, menu); return true; } public void onClick(View view) { if(view==button){ String str; str=editText.getText().toString(); pw.print(str); pw.flush(); } else if(clear==view){ tv.setText(""); } } public void run() { while(true){ try { String str; while((str=br.readLine())!=null){ final String s=str; handler.post(new Runnable(){ public void run() { tv.setText(tv.getText()+s+"\r\n"); }}); } } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -