安卓第七天笔记--网络编程一 Android对网络的支持 Android完全支持JDK本身的TCP,UDP网络通信API,也可以使用ServerSocket,Socket来建立基于TCP/IP协议的网络通信,还可以使用DatagramSocket,Datagrampack ...
安卓第七天笔记--网络编程一
Android对网络的支持
Android完全支持JDK本身的TCP,UDP网络通信API,也可以使用ServerSocket,Socket来建立基于TCP/IP协议的网络通信,还可以使用DatagramSocket,Datagrampacket,MulticastSocket来建立 基于UDP的协议网络通信
同时支持JDK提供的URL,URLConnection等网络通信API.
Andoirdgip内置了Apache的HttpClient,这样可以非常方便的发送HTTP请求,并获取HTTP响应.
1.Socket实现
服务器
package com.itheima.server;import java.io.IOException;import java.net.ServerSocket;import java.net.Socket;import java.util.ArrayList;/** * ServerSocket 服务端* @Decription TODO * @author 刘楠 * * @time2016-2-22下午4:54:59 */public class MyServer { public static ArrayList<Socket> socketList = new ArrayList<Socket>(); public static void main(String[] args) { try { //建立serversocket ServerSocket serverSocket = new ServerSocket(25000); //服务器一直在运行状态 while(true){ //开始监听 Socket socket = serverSocket.accept(); socketList.add(socket); //启动新的线程 new ServerThread(socket).start(); } } catch (IOException e) { e.printStackTrace(); } }}/*线程类*/package com.itheima.server;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.io.OutputStream;import java.net.Socket;public class ServerThread extends Thread { private Socket socket; public ServerThread(Socket socket) throws IOException { //初始化 this.socket = socket; } @Override public void run() { String ip = socket.getInetAddress().getHostAddress(); System.out.println("ip:"+ip); BufferedReader br=null; OutputStream out = null; try { br = new BufferedReader(new InputStreamReader(socket.getInputStream(), "UTF-8")); out = socket.getOutputStream(); String content = null; while((content=br.readLine())!=null){ System.out.println("来自客户端:"+content); //手动加上换行 符,不然没客户端收不到 out.write((content+"\n").toUpperCase().getBytes("utf-8")); System.out.println("服务发出去了:"); } out.close(); br.close(); socket.close(); } catch (IOException e) { e.printStackTrace(); } }}
原标题:安卓第七天笔记
关键词:
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。