Android下使用Socket连接网络电脑
2011-04-19 16:31
453 查看
既然是使用SOCKET连接网络上的电脑,就分为两部分
其一,Android上面的Client
其二,PC上的Server
Android上面的实现代码如下
PC上面的Server 创建一个java的项目
其一,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()); } } }
相关文章推荐
- Android 使用Socket实现服务器与手机客户端的长连接五:使用队列封装请求
- 使用Android中的网络连接
- Android之使用HttpURLConnection连接网络
- Win7电脑开启局域网连接和共享过程中出现的"您可能没有权限使用网络资源"的解决办法
- Android中使用代码控制Wifi及数据连接网络开关
- android 使用post方式进行网络连接
- 12、android socket使用demo:网络聊天
- android网络编程——使用Android中的网络连接
- Android 使用Socket实现服务器与手机客户端的长连接八
- Android:使用Broadcast Receiver监听网络连接状态的改变
- java|android 使用SocketIO.jar连接nodejs websocket
- Android使用Google推荐的联网框架Volley,让连接网络更加简单
- android中使用Socket连接进行聊天程序示例
- 小米手机通过USB连接电脑,共享使用电脑的网络
- Android设备使用网络连接调试
- Android出现java.net.SocketException: Permission denied 的问题 ,Android连接网络
- CocoaAsyncSocket网络通信使用之tcp连接(一)
- android 使用brocastReceiver监听网络连接状态
- Android--使用socket通讯建立网络聊天室2
- Android网络客户端编程,HttpGet类和HttpPost类使用详解,连接php-mysql服务器