Android下使用Socket连接网络电脑
Android下使用Socket连接网络电脑
既然是使用SOCKET连接网络上的电脑,就分为两部分
其一,Android上面的Client
其二,PC上的Server
Android上面的实现代码如下
- package Hello.MySocket;
- import java.io.BufferedReader;
- import java.io.BufferedWriter;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.io.OutputStreamWriter;
- import java.io.PrintWriter;
- import java.net.Socket;
- import java.net.UnknownHostException;
- import android.app.Activity;
- import android.os.Bundle;
- import android.util.Log;
- import android.view.View;
- import android.widget.Button;
- import android.widget.EditText;
- import android.widget.TextView;
- public class MySocket extends Activity {
- private final String DEBUG_TAG="lengfeng";
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- Log.v("lengfeng","Android Start Connect");
- Socket socket=null;
- String mesg="my name is log /r/n";
- try {
- socket=new Socket("10.0.2.2",54321);
- //向服务器发送信息
- PrintWriter out=new PrintWriter(new BufferedWriter(new OutputStreamWriter(socket.getOutputStream())),true);
- out.println(mesg);
- //接受服务器的信息
- BufferedReader br=new BufferedReader(new InputStreamReader(socket.getInputStream()));
- String mstr=br.readLine();
- if(mstr!=null)
- {
- Log.e(DEBUG_TAG,mesg);
- }else
- {
- Log.e(DEBUG_TAG,"数据错误");
- }
- out.close();
- br.close();
- socket.close();
- } catch (UnknownHostException e) {
- e.printStackTrace();
- } catch (IOException e) {
- e.printStackTrace();
- }catch(Exception e)
- {
- Log.e(DEBUG_TAG,e.toString());
- }
- }
- }
PC上面的Server 创建一个java的项目
- import java.io.BufferedReader;
- import java.io.BufferedWriter;
- import java.io.IOException;
- import java.io.InputStreamReader;
- import java.io.OutputStreamWriter;
- import java.io.PrintWriter;
- import java.net.ServerSocket;
- import java.net.Socket;
- public class MyJavaServer {
- /**
- * @param args
- */
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- System.out.print("MyJavaServer Start Runing/n");
- try {
- ServerSocket serverSocket=new ServerSocket(54321);
- while(true)
- {
- System.out.println("接收用户连接:");
- //接受客户端请求
- Socket client=serverSocket.accept();
- System.out.println("accept:");
- try
- {
- //接受客户端信息
- BufferedReader in=new BufferedReader(new InputStreamReader(client.getInputStream()));
- String str=in.readLine();
- System.out.println("read:"+str);
- //向服务器发送消息
- PrintWriter out=new PrintWriter(new BufferedWriter(new OutputStreamWriter(client.getOutputStream())),true);
- out.println("Server Message:"+str);
- in.close();
- out.close();
- }catch(Exception ex)
- {
- System.out.println(ex.getMessage());
- ex.printStackTrace();
- }
- finally
- {
- client.close();
- System.out.println("close");
- }
- }
- } catch (IOException e) {
- System.out.println(e.getMessage());
- }
- }
- }
评论暂时关闭