Android中Socket通信案例
以下这个案例是基于TCP/UDP协议的。
服务端实现代码
基于TCP的服务端协议
// 声明一个ServerSocket对象
ServerSocket serverSocket = null;
try {
serverSocket = new ServerSocket(4567);
Socket socket = serverSocket.accept();
InputStream inputStream = socket.getInputStream(); } catch (Exception e) {
// TODO: handle exception
}
基于UDP的服务端协议
try {
DatagramSocket socket = new DatagramSocket(4567);
byte[] bytes = new byte[1024];
DatagramPacket packet = new DatagramPacket(bytes, bytes.length);
socket.receive(packet); } catch (Exception e) {
// TODO: handle exception
}
客户端实现代码
基于TCP协议的客户端
publicvoid run() {
// TODO Auto-generated method stub
try {
Socket socket = new Socket("192.168.1.110", 4567);
OutputStream outputStream = socket.getOutputStream();
InputStream inputStream = new FileInputStream("f:/abc.txt");
byte[] bytes = new byte[2 * 1024];
while (true) {
int temp = inputStream.read(bytes, 0, bytes.length);
if (temp == -1) {
break; } else {
outputStream.write(bytes, 0, temp);
}
}
outputStream.flush();
} catch (Exception e) {
// TODO: handle exception
} finally {
} }
基于UDP协议的客户端
public void run() {
// TODO Auto-generated method stub
try {
// 定义一个DatagramSocket对象,并设置端口号为4567
DatagramSocket socket = new DatagramSocket(4567);
InetAddress address = InetAddress.getByName("192.168.1.110");
System.out.println(address);
String str = "hello";
byte[] data = str.getBytes();
DatagramPacket packet = new DatagramPacket(data, 0,
data.length, address, 4567);
socket.send(packet);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
} }
Android中Socket通信案例的更多相关文章
- Android中Socket通信之TCP与UDP传输原理
一.Socket通信简介 Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信.两者的最大差异在于,http连接使用的是"请求-响应方式",即在请求时 ...
- Android 之 Socket 通信
Android 之 Socket 通信 联系一下 Socket 编程,之后需要将一个 JavaEE 项目移植到 Android,暂时现尝试写一个简单的 DEMO,理解一下 Socket Server ...
- Android之Socket通信、List加载更多、Spinner下拉列表
Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信.两者的最大差异在于,http连接使用的是“请求—响应方式”,即在请求时建立连接通道,当客户端向服务器发送请求后,服务 ...
- Android开发--Socket通信
一.Socket通信简介 Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信.两者的最大差异在于,http连接使用的是"请求-响应方式",即在请求时 ...
- Android中Socket大文件断点上传
原文:http://blog.csdn.net/shimiso/article/details/8529633 什么是Socket? 所谓Socket通常也称作“套接字”,用于描述IP地址和端口,是一 ...
- 基于android的Socket通信
一.Socket通信简介 Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信.两者的最大差异在于,http连接使用的是“请求—响应方式”,即在请求时建立连接通道,当客户 ...
- Android 蓝牙 socket通信
Android中蓝牙模块的使用 使用蓝牙API,Android应用程序能够执行以下功能: 扫描其他蓝牙设备查询本地已经配对的蓝牙适配器建立RFCOMM通道通过服务发现来连接其他设备在设备间传输数据管理 ...
- Android中线程通信的方式
Android 跨线程通信 android 中是不允许在主线程中进行 网络访问等事情的因为UI如果停止响应5秒左右的话整个应用就会崩溃,到Android4.0 以后 Google强制规定,与网络相关的 ...
- android adb socket 通信
今天遇到一个问题:pc客户端和android的App通信,心跳通道(心跳包27个字节,是一个业务空包)在部分pc上总是会超时(5秒超时),nagle算法也给禁用了,pc端时按按量发送心跳的,怀疑来怀疑 ...
随机推荐
- 暂时解决Sublime Text 2不支持input问题(转)
(1)打开当前python文件 (2)然后 Tools -> Command Palette (3)SublimeREPL Python RUN current file (4)就会打开新窗口, ...
- 发现js端日期跟php端日期格式不一致
当程序没有问题,而php显示的日期和js显示的日期不一致,相差一天的时候或者其它,一定要看看php.ini中时区的配置是否合理.
- Winform开发--控件
WinForm控件开发总结目录 WinForm控件开发总结目录 WinForm控件开发总结(一)------开篇 WinForm控件开发总结(二)------使用和调试自定义控件 WinForm控件开 ...
- 用Java实现向Cassandra数据库中插入和查询数据
所用jar包: 其中jxl.jar和dom4j.jar,jaxen-1.1-beta-6.jar是解析XML文件用的jar包,如果不解析XML文件可以不用. 代码如下: package com.loc ...
- 对lua继承中self.__index = self的释疑
首先看看从lua表中查找一个键时的流程: -- 当从表t中查找键k时,lua处理如下: -- 1.t中是否有k,有则直接返回值,否则第2步 -- 2.t是否有元表, 无则返回nil, 有则第3步 -- ...
- Cows
Farmer John's cows have discovered that the clover growing along the ridge of the hill (which we can ...
- [Java] final的意义
1.如果一个数据既是static又是final,那么它会拥有一块无法改变的存储空间. 2.final data: 当final用于基本数据类型时,final让其值(value)保持不变,但是当用于ob ...
- [ASP.NET] Session的了解
ASP.NET Session的使用当中我们会遇到很多的问题,那么这里我们来谈下经常出现的一些常用ASP.NET Session的理解: ASP.NET Session的七点认识之一 对于值类型的变量 ...
- MVC框架 - 高级示例
在第一个MVC教程章中,我们学会了如何在MVC控制器和视图进行交互.在本教程中,我们将向前更进一步,学习如何使用模型创建高级应用程序来创建,编辑,删除用户,在我们的应用程序中查看列表. 下面是用来创建 ...
- Hadoop学习笔记(1) ——菜鸟入门
Hadoop学习笔记(1) ——菜鸟入门 Hadoop是什么?先问一下百度吧: [百度百科]一个分布式系统基础架构,由Apache基金会所开发.用户可以在不了解分布式底层细节的情况下,开发分布式程序. ...