前言
Android与服务器的通信方式主要有两种,一是Http通信,一是Socket通信。两者的最大差异在于,http连接使用的是“请求—响应方式”,即在请求时建立连接通道,当客户端向服务器发送请求后,服务器端才能向客户端返回数据。而Socket通信则是在双方建立起连接后就可以直接进行数据的传输,在连接时可实现信息的主动推送,而不需要每次由客户端想服务器发送请求。
Socket又称套接字,在程序内部提供了与外界通信的端口,即端口通信。通过建立socket连接,可为通信双方的数据传输传提供通道。
socket的主要特点有数据丢失率低,使用简单且易于移植。
正文
Socket的分类
根据不同的的底层协议,Socket的实现是多样化的。在TCP/IP协议族当中主要的Socket类型为流套接字(stream socket)和数据报套接字(datagram socket)。
流套接字将TCP作为其端对端协议,提供了一个可信赖的字节流服务。
Socket 基本通信模型
简单的使用流套接字
参考文章
-
《》
-
《》
-
《》
历史上的今天
暂无评论...
随机推荐
史铁生:老家
常要在各种表格上填写籍贯,有时候我写北京,有时候写河北涿州,完全即兴。写北京,因为我生在北京长在北京,大约死也不会死到别处去了。写涿州,则因为我从小被告知那是我的老家,我的父母及祖上若干辈人都曾在那儿生活。查词典,籍贯一词的解释是:祖居或个人出生地。——我的即兴碰巧不错。可是这个被称为老家的地方,...
Android Studio使用makejar导出jar包
前言记录一下如何使用makejar导出jar包。正文这里lib库PhotoView来说。PhotoView/build.gradle 新增如下内容:task clearJar(type: Delete) { delete rootProject.file("PhotoView/j...
android13添加SELinux权限时踩的坑
前言在配置Android 13 SELinux权限时出现如下坑,记录一下,方便自己查阅。正文坑一:ERROR: end of file in comment编译时提示service.te有如下错误prebuilts/build-tools/linux-x86/bin/m4:device/...
Thread中断简单介绍
前言简答记录一下Thread中断相关的内容。记录一下,方便自己查阅。正文Thread中断主要涉及如下几个方法:interrupt()isInterrupted()interrupted()下面单独介绍一下。interrupt()interrupt()使线程中断。...
OkHttp简单介绍之一
前言okhttp很常用的一个网络请求框架,因此记录一下如何使用,然后走一下源码流程。这篇只是简单记录一下okhttp的同步和异步请求。好记性不让烂笔头正文同步和异步初始化都一样,只是最后调佣的方法不一样。这里只是简单记录,因此直接上代码。在Module的build.gradle中引入...
[摘]Android图片加载框架之Glide和Picasso的区别
前言Glide和Picasso在实际中很常用,也容易忘记各个的优缺点。此文整理很全,因此摘抄于此,方便自己查阅。本文摘抄《Android图片加载框架之(Glide和Picasso的区别,Glide的简单使用)》)。正文Glide,一个被google所推荐的图片加载库,常见的还有Picas...