Android使用Socket(Tcp/Udp)协议进行数据传输(传输大文件)

时间:2024-03-28 19:38:10

先揭晓一下前面天的抽奖活动中奖人员:


Android使用Socket(Tcp/Udp)协议进行数据传输(传输大文件)

恭喜这位同学中奖,麻烦你在微信公众号留言你的收货地址,或者加入QQ群:417046685 来找我也行。


同时,知识星球的活动还在继续,现在加入知识星球立即赠送技术图书一本



今天带来的是阿钟的一篇关于Socket的文章,现在的技术文章大多数千篇一律,所以我特意找了一些冷门的来,不知道效果如何,那么我们直奔主题吧~


Socket是什么:所谓Socket 通常也称作”套接字”,用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过”套接字”向网络发出请求或者应答网络请求。Socket内部又有两种协议(Tcp/Udp),我们来说说其各自的特点。


先来说说网络编程的三要素

1.IP地址:网络中计算机的唯一标识
2.端口
3.协议:通信的规则


Tcp/Udp特点

一、 TCP(协议):

  • 建立连接,形成传输数据的通道

  • 在连接中进行大数据量传输

  • 通过三次握手完成连接,是可靠协议

  • 必须建立连接,效率稍微低点


二. UDP(协议):

  • 将数据及源和目的封装在数据包中,不需要建立连接

  • 每个数据包的大小限制在64K内

  • 因无连接,是不可靠协议

  • 不需要建立连接,速度快


Socket工作图解

Android使用Socket(Tcp/Udp)协议进行数据传输(传输大文件)



下面进入实战环节

TCP协议进行数据传输,实现两台设备的一个简单数据发送。


客户端发送数据

Android使用Socket(Tcp/Udp)协议进行数据传输(传输大文件)

服务端接收数据

Android使用Socket(Tcp/Udp)协议进行数据传输(传输大文件)

现在来看下UDP协议是怎么进行数据传输的。

发送端

Android使用Socket(Tcp/Udp)协议进行数据传输(传输大文件)

接收端

Android使用Socket(Tcp/Udp)协议进行数据传输(传输大文件)


使用Tcp协议传输大文件,循环将数据写入流中

Tcp发送端

Android使用Socket(Tcp/Udp)协议进行数据传输(传输大文件)

大文件传输(Tcp接收端)

Android使用Socket(Tcp/Udp)协议进行数据传输(传输大文件)

掌握了Socket的基本传输规则,相信你很快就能写出一个利用局域网让两台设备进行数据传输了。


Demo下载地址请点击阅读原文:



扫描二维码

加入知识星球

Hi Android

Android使用Socket(Tcp/Udp)协议进行数据传输(传输大文件)