我使用我的电脑作为服务器,只需构建一个套接字。 在客户端源代码中,我只构建一个连接到pc的套接字。但是,当我在手机中打开应用程序时,它显示应用已停止...我已将Internet的权限添加到项目中。
服务器
public class Server extends Thread{
private Socket client;
public Server(Socket c){
this.client = c;
}
public void run(){
try{
//System.out.println("Start!");
BufferedReader in =
new BufferedReader(new InputStreamReader(client.getInputStream()));
PrintWriter out = new PrintWriter(client.getOutputStream());
while(true){
String str = in.readLine();
System.out.println(str);
out.println("has receive...");
out.flush();
if(str.equals("end"))
break;
}
client.close();
}
catch(IOException ex){
}finally{
}
}
public static void main(String[] args) throws IOException{
ServerSocket server = new ServerSocket(2345);
System.out.println("Start!");
while (true){
Server sv = new Server(server.accept());
sv.start();
}
}
}
客户端:
public class MainActivity extends Activity {
Socket socket;
DataInputStream dis;
DataOutputStream dos;
private TextView tv;
private Button bt;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
tv = (TextView) findViewById(R.id.TextView1);
bt = (Button) findViewById(R.id.button1);
bt.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
try{
socket = new Socket("155.69.149.221",2345);
tv.setText("Connected!");
}catch(IOException ioe){
}
}
});
}
}