android的网络编程分为2种:基于socket的,和基于http协议的。

基于socket的用法

服务器端:

先启动一个服务器端的socket ServerSocket svr = new ServerSocket(8989);

开始侦听请求         Socket s = svr.accept();

取得输入和输出        DataInputStream dis = new DataInputStream(s.getInputStream());

DataOutputStream dos = new DataOutputStream(s.getOutputStream());

Socket 的交互通过流来完成,即是说传送的字节流,因此任何文件都可以在上面传送。谁打开的记得要关上。

用DataInputStream/DataOutputStream来进行包装是因为我们想要他们对基本数据类型的读写功能readInt(),writeInt(),readUTF(),writeUTF()等等。

客户端:

发起一个socket连接      Socket s = new Socket("192.168.1.200",8989);

取得输入和输出        DataInputStream dis = new DataInputStream(s.getInputStream());

DataOutputStream dos = new DataOutputStream(s.getOutputStream());

之后就可以相互通信了。谁打开的记得要关上。

基于Http协议

一般是发送请求到某个应用服务器。此时需要用到HttpURLConnection

先取得HttpURLConnection urlConn = new URL("http://www.google.com").openConnection();

设置标志

urlConn.setDoOutput(true); urlConn.setDoInput(true);//post的情况下需要设置DoOutput为true

urlConn.setRequestMethod("POST");

urlConn.setUseCache(false);//设置是否用缓存

urlConn.setRequestProperty("Content-type","application/x-www-form-urlencoded");//设置content-type

获得输出流,便于想服务器发送信息。

DataOutputStream dos = new DataOutputStream(urlConn.getOutputStream());

望流里面写请求参数

dos.writeBytes("name="+URLEncoder.encode("chenmouren","gb2312");

dos.flush();dos.close();//发送完后马上关闭。

获得输入流,取数据

BufferReader reader = new BufferedReader(new InputStreamReader(urlConn.getInputStream()));

reader.readLine();//用 !=null来判断是否结束

reader.close();

读完了记得关闭connection  urlConn.disconnect();

流程记录就到此为止。

更多相关文章

  1. Android(安卓)程序获取、设置铃声和音量
  2. Android(安卓)build system 分析之 envsetup.sh
  3. Android(安卓)访问权限设置
  4. android 透明度
  5. Android(安卓)对话框【Dialog】去除白色边框代码
  6. android 权限介绍(一)
  7. android Toolbar的使用结合状态栏与返回键
  8. Activity属性设置大全
  9. App 启动页出现短暂闪屏的解决方案

随机推荐

  1. Android的7种进度条样式
  2. android 考研appwidget的实现
  3. Android(安卓)App常用图标尺寸规范
  4. Android(安卓)shell 系统命令大全
  5. android:hintText与android:inputType详
  6. 安装好android的adt以后重启eclipse,但是
  7. Android(安卓)内存数据库
  8. 使用 Eclipse PhoneGap 构建 Android(安
  9. android Notification 的使用
  10. Android设置透明、半透明等效果