本文实例为大家分享了Android socket的实现原理,供大家参考,具体内容如下

Socket套接字
是网络上具有唯一标识的IP地址和端口号组合在一起才能构成唯一能识别的标识符套接字。
socket实现的原理机制:
1、通信的两端都有Socket
2、网络通信其实就是Socket间的通信
3、数据在两个Socket间通过IO传输
建立Socket(客户端)和ServerSocket(服务器端)
建立连接后,通过Socket中的IO流进行数据的传输
关闭socket
同样,客户端与服务器端是两个独立的应用程序。
服务器端思路
1、建立服务器端的socket服务,需要一个端口
2、服务端没有直接的操作,而是通过accept方法获取客户端对象,在通过获取到的客户端对象的流和客户端进行通信
3、通过客户端获取流对象的方法,读取数据或者写入数据
4、如果服务完成,需要关闭客户端,然后关闭服务器,但是,一般会关闭客户端,不会关闭服务器,因为服务端是一直提供服务的
服务端实现代码
// 创建服务器端
ServerSocket server = new ServerSocket(5555);
while(true){
// 等待连接
Socket accept = server.accept();
OutputStream outputStream = accept.getOutputStream();
outputStream.write("你好,我是服务器!\r\n".getBytes());
outputStream.flush();
// 读取数据
InputStream inputStream = accept.getInputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(
inputStream));
System.out.println("服务器:" + reader.readLine());
outputStream.close();
inputStream.close();
}
客户端思路
1、建立客户端的Socket服务,并明确要连接的服务器。
2、如果连接建立成功,就表明,已经建立了数据传输的通道.就可以在该通道通过IO进行数据的读取和写入.该通道称为Socket流,Socket流中既有读取流,也有写入流.
3、通过Socket对象的方法,可以获取这两个流
4、通过流的对象可以对数据进行传输
5、如果传输数据完毕,关闭资源
客户端实现代码
//创建套接字 确定要连接的服务器ip与端口口
Socket socket=new Socket("172.17.23.77",5555);
InputStream inputStream = socket.getInputStream();
BufferedReader br=new BufferedReader(new InputStreamReader(inputStream));
String readLine = br.readLine();
System.out.println("客户端:"+readLine);
//向服务器发送消息
OutputStream outputStream = socket.getOutputStream();
outputStream.write("你好\r\n".getBytes());
outputStream.flush();
outputStream.close();
inputStream.close();
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# Android
# socket
# Android Socket通信详解
# Android编程之客户端通过socket与服务器通信的方法
# Android中Socket通信的实现方法概述
# Android中使用WebSocket实现群聊和消息推送功能(不使用WebView)
# Android NDK中socket的用法以及注意事项分析
# python服务器与android客户端socket通信实例
# android开发socket编程之udp发送实例分析
# Android中使用socket通信实现消息推送的方法详解
# Android使用socket创建简单TCP连接的方法
# Android编程实现基于局域网udp广播自动建立socket连接的方法
# 客户端
# 服务端
# 流进
# 我是
# 你好
# 都有
# 也有
# 这两个
# 大家分享
# 具体内容
# 大家多多
# 就可以
# 应用程序
# 网络通信
# 端口号
# 行数
# 建立了
# 发送消息
# 过流
# ServerSocket
相关文章:
相亲简历制作网站推荐大全,新相亲大会主持人小萍萍资料?
常州自助建站费用包含哪些项目?
攀枝花网站建设,攀枝花营业执照网上怎么年审?
太原网站制作公司有哪些,网约车营运证查询官网?
如何快速生成橙子建站落地页链接?
魔毅自助建站系统:模板定制与SEO优化一键生成指南
公司网站设计制作厂家,怎么创建自己的一个网站?
如何在腾讯云免费申请建站?
如何将凡科建站内容保存为本地文件?
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
济南企业网站制作公司,济南社保单位网上缴费步骤?
建站之星与建站宝盒如何选择最佳方案?
如何选择高效便捷的WAP商城建站系统?
成都网站制作公司哪家好,四川省职工服务网是做什么用?
上海网站制作开发公司,上海买房比较好的网站有哪些?
建站之星展会模版如何一键下载生成?
非常酷的网站设计制作软件,酷培ai教育官方网站?
小程序网站制作需要准备什么资料,如何制作小程序?
C++中的Pimpl idiom是什么,有什么好处?(隐藏实现)
如何续费美橙建站之星域名及服务?
建站之星价格显示格式升级,你的预算足够吗?
上海网站制作网页,上海本地的生活网站有哪些?最好包括生活的各个方面的?
如何快速搭建高效简练网站?
C#怎么创建控制台应用 C# Console App项目创建方法
视频网站app制作软件,有什么好的视频聊天网站或者软件?
如何基于PHP生成高效IDC网络公司建站源码?
建站之星安装后界面空白如何解决?
家具网站制作软件,家具厂怎么跑业务?
网站图片在线制作软件,怎么在图片上做链接?
北京网站制作的公司有哪些,北京白云观官方网站?
专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?
免费制作统计图的网站有哪些,如何看待现如今年轻人买房难的情况?
大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?
如何基于云服务器快速搭建网站及云盘系统?
如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?
如何在VPS电脑上快速搭建网站?
建站之星备案是否影响网站上线时间?
如何通过山东自助建站平台快速注册域名?
如何选择可靠的免备案建站服务器?
如何配置IIS站点权限与局域网访问?
定制建站是什么?如何实现个性化需求?
如何在建站之星网店版论坛获取技术支持?
广州网站制作公司哪家好一点,广州欧莱雅百库网络科技有限公司官网?
北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?
网站好制作吗知乎,网站开发好学吗?有什么技巧?
个人摄影网站制作流程,摄影爱好者都去什么网站?
如何解决VPS建站LNMP环境配置常见问题?
如何选择长沙网站建站模板?H5响应式与品牌定制哪个更优?
,想在网上投简历,哪几个网站比较好?
如何在橙子建站上传落地页?操作指南详解
*请认真填写需求信息,我们会在24小时内与您取得联系。