android 发送UDP广播,搜寻服务器建立socket链接
应用场景:客户端(手机,pc)需要搜寻所在局域网内的服务器并获得服务器地址。
方法简介:客户端发送UDP广播,服务收到广播后得到客户端ip地址,然后向客户端发送一次socket链接,客户端收到socket链接,获得服务器地址。
相关知识:
UPD、TCP。TCP是面向链接的,可靠的通信方式。UDP是面向非链接的通讯方式。TCP的建立比较麻烦,要经过“三次握手”。而UDP的建立比较简单,发送方只管把内容发送出去,不管接收方是否收到。UDP的传输分为:单播,多播,广播。其中,多播和广播是通过TCP/IP协议里面特定的IP地址实现的,例如受限广播的地址为:255.255.255.255 。
网络端口一共有65535个,主机之间的通讯需要制定端口。网络端口分为三类,公认端口,注册端口和动态和/或私有端口。
实验方式:
四个应用程序,其中两个android程序,两个PC程序。让PC和android轮流,或者一起当做客户端和服务端。测试结果是:PC端的UDP监听和UDP发起程序可以同时运行。但是android手机上,一旦UDP服务在监听端口,本机就不能再发送该端口的UDP广播。
代码下载:http://download.csdn.net/detail/qiushibaiyi/7531837
网络端口资料入口:http://baike.baidu.com/view/43200.htm?fr=aladdin 点击打开链接
多播和广播资料入口 : http://www.cnblogs.com/hnrainll/archive/2011/09/01/2162110.html 点击打开链接
部分代码参考:http://download.csdn.net/download/xiaoxiaobian3310903/4502201# 点击打开链接
参考文章: http://blog.sina.com.cn/s/blog_6c0a8fbb0100s3k5.html 点击打开链接
代码地址:http://download.csdn.net/detail/qiushibaiyi/7531837点击打开链接
android 发送UDP广播,搜寻服务器建立socket链接相关推荐
- python udp 直播_[Python] socket发送UDP广播实现聊天室功能
原博文 2018-11-24 12:33 − 一.说明 本文主要使用socket.socket发送UDP广播来实现聊天室功能. 重点难点:理解UDP通讯流程.多线程.UDP广播收发等. 测试环境:Wi ...
- Android客户端 和 pc服务器 建立socket连接并发送数据
服务器使用java代码 1.服务端需要创建一个ServerSocket(port) 2.port(端口) 地址范围在0~65535请使用1024以上的端口,尽量偏大使用,否则可能和你主机上的其他应用程 ...
- android: 发送自定义广播
5.3.1 发送标准广播 在发送广播之前,我们还是需要先定义一个广播接收器来准备接收此广播才行,不然发 出去也是白发.因此新建一个 MyBroadcastReceiver 继承自 Broadca ...
- android 发送重启广播,Android实现关机重启的方法分享
实现系统重启的APK需要system的权限,在AndroidManifest.xml中增加android:sharedUserId="android.uid.system",再修改 ...
- 广播搜寻服务器的动态IP
我服务器放在景区镇上租的住处里,附近经常因为施工或是乱开挖之类的导致断电.我用的电信宽带.每次断电之后服务器自动重启就得重新分配一个ip.因为用了域名服务,重启后能根据域名查询到新的IP. 但是,我还 ...
- Python使用UDP广播实现服务器自动发现
机房管理软件或者教学软件一般都由服务器和客户端组成,当客户端启动之后会自动搜索服务器,这是如何实现的呢?下面通过一段代码来演示其中一种比较高效的方法. 客户端代码: import socket imp ...
- android 发送前台广播,使用IntentService与BroadcastReceiver实现后台服务(Android7.0可用)...
IntentService的优点 IntentService会创建单独的线程处理所有的Intent请求, 会处理onHandleIntent方法实现的代码, 隐藏开发者无须处理多线程问题, 当所有请求 ...
- android 发送显示广播,如何查看Android系统当前发送了什么广播
作者:Yogi 前言:在开发的时候,我们有时想知道我们定义的广播是否成功发送,或者想知道做了某个操作,系统是否会发送广播,并且发送了什么广播.如果说能够直接查看到,那是非常好的,这样就不需要googl ...
- Qt | UDP广播通信的使用、实战项目使用案例
Qt | UDP广播通信的使用.实战项目使用案例 1.UDP广播介绍 UDP广播地址固定IP地址为:XXX.XXX.XXX.255. 如果向全网段发送广播消息,那么广播地址为:255.255.255. ...
- Python标准库socketserver实现UDP协议时间服务器
Python标准库socket提供了套接字编程所需要的绝大部分功能,更多案例详见文末相关阅读. 很久之前推送过一个使用标准库socket实现UDP协议时间服务器的代码,参考 Python使用UDP协议 ...
最新文章
- CodeChef Ada Pawns
- linux搜索指定文件夹里文件是否存在,Linux文件操作之文件查询与搜索命令详解...
- php加密数据解密,php 数据加密解密
- 经理必看的8个管理网站
- python决策树多分类代码_绘制决策树分类的多类ROC曲线
- [游戏程序] 经典游戏服务器端架构概述
- 市面上主流编辑器介绍(2021/05/20)
- IEEE754详解(最详细简单有趣味的介绍)
- CodeForces - 1004B - Sonya and Exhibition(纯思维题)
- CUDA C 编程权威指南 Grossman 第4章 全局内存
- 红外热成像仪原理与用途——TFN TD97 双目手持热像仪红外夜视仪
- PHPstudy之PHP探针的查找
- matlab 生成网格,matlab生成网格
- 数控机床的基本组成包括哪些?
- 详解Html5关于拖拽(Drag 和 drop)的使用和事件
- HTML 设置浏览器小图标
- 100种思维模型之大脑实验思维模型-65
- 服务器电源串口协议,MOXA串口服务器电源模块Nport 5630-8
- loadrunner11中 800用户在线,200用户并发运行怎么设置
- jwplayer 隐藏属性方法记载
热门文章
- EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY'RE NOT. RENEWALS ARE
- 可该变某一属性的GAN:Hijack-GAN
- 适用于开发者的开源分布式即时通讯系统
- PostgreSQL+PostGIS下载和离线安装
- 如何提高游戏中的打击感?
- WebKit介绍及总结(一)
- Intellij IDEA 启动 Spring boot 项目在Run中启动没问题 ,Debug启动缓慢卡住 解决方式
- 塞班系统更新服务器,塞班系统又更新了,又更新了,仿佛回到十年前!
- cuba-platform和jmix框架
- web前端经典面试题