参考:https://www.jianshu.com/p/c78b37a2ca47

与安卓交互需要用到 特此记录

public class NettyClient  {public final static String HOST = "192.168.31.178";public final static int PORT = 9527;private static EventLoopGroup workerGroup = null;private Channel channel;//重连调用的函数public Channel connect(String host, int port) {doConnect(host, port);return this.channel;}public void doConnect(String host, int port) {try {//设置一个多线程循环器workerGroup = new NioEventLoopGroup();//启动附注类Bootstrap bootstrap = new Bootstrap();bootstrap.group(workerGroup);//指定所使用的NIO传输channelbootstrap.channel(NioSocketChannel.class);//指定客户端初始化处理bootstrap.handler(new ClientIniterHandler());//连接服务//   Channel channel = bootstrap.connect(host, port).sync().channel();ChannelFuture f = bootstrap.connect(host, port);f.addListener(new ConnectionListener());channel = f.channel();} catch (Exception e) {e.printStackTrace();System.exit(1);}}
public class ConnectionListener implements ChannelFutureListener {private NettyClient nettyClient = new NettyClient();@Overridepublic void operationComplete(ChannelFuture channelFuture) throws Exception {if (!channelFuture.isSuccess()) {final EventLoop loop = channelFuture.channel().eventLoop();loop.schedule(new Runnable() {@Overridepublic void run() {Log.e("ConnectionListener: " ,"服务端链接不上,开始重连操作.." );nettyClient.connect(NettyClient.HOST, NettyClient.PORT);}}, 1L, TimeUnit.SECONDS);} else {Log.e("ConnectionListener: " ,"服务端链接成功..." );}}
}
  //有异常 关闭@Overridepublic void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) throws Exception {super.exceptionCaught(ctx, cause);ctx.close();}//服务端突然挂了@Overridepublic void channelInactive(ChannelHandlerContext ctx) throws Exception {Log.e("channelInactive: " ,"掉线了..." );//使用过程中断线重连final EventLoop eventLoop = ctx.channel().eventLoop();eventLoop.schedule(new Runnable() {@Overridepublic void run() {nettyClient.connect(NettyClient.HOST, NettyClient.PORT);}}, 1L, TimeUnit.SECONDS);super.channelInactive(ctx);}

Netty客户端断线重连相关推荐

  1. Netty客户端断线重连实现及问题思考

    点击关注公众号,利用碎片时间学习 前言 在实现TCP长连接功能中,客户端断线重连是一个很常见的问题,当我们使用netty实现断线重连时,是否考虑过如下几个问题: 如何监听到客户端和服务端连接断开 ? ...

  2. Netty的断线重连

    因为工作中经常使用到TCP,所以会频繁使用到诸如Mina或Netty之类的通信框架,为了方便项目的逻辑调用,经常会在框架的基础上再一次进行封装,这样做其实有画蛇添足的嫌疑,但也是无奈之举. 这里主要记 ...

  3. Android 通过 NSD 服务 Netty(断线重连、心跳、黏包处理) 实现两个 Android 系统端的长连接通讯

    引言 近期需求,通过手机App端取号机(含叫号通知功能),实时连接 另一台 Android 广告机用于播放当前被叫到的号数. 这里有两种Android 机 一台「基于Sunmi版的可出小票的Andro ...

  4. Labview 编写TCP/IP 客户端断线重连机制程序,亲测可用

    程序面板如下图: 此程序支持任意一方断线重连机制,仅供大家参考! 实际工程中,如果出现服务器出现宕机,那么我们的客户端要有重连的机制,不然软件不会自动连接服务器,明显是我们程序编写的一个漏洞,无论是从 ...

  5. springboot集成websocket(一)客户端、客户端断线重连、客户端连接验证

    springboot集成websocket客户端 一.首先是导入依赖包 1.在pom.xml中加入下述即可 <!--websocket作为客户端 --><dependency> ...

  6. Socket编程概念和 Socket之异步TCP客户端断线重连

    一:什么是SOCKET​​​​​​​ socket的英文原义是"孔"或"插座".作为进程通信机制,取后一种意思.通常也称作"套接字",用于描 ...

  7. TCP客户端断线重连-升级版

    解决拔掉网线后无法快速诊断是否掉线问题 using System.Collections; using System.Collections.Generic; using System.Net; us ...

  8. Netty是如何实现TCP心跳机制与断线重连的

    本文来说下Netty 是如何实现 TCP 心跳机制与断线重连的 文章目录 什么是心跳机制HeartBeat 如何实现心跳机制 Netty实现自定义的心跳机制 服务端 客户端 测试效果 客户端断线重连 ...

  9. 天天炫斗服务器维修,【天天炫斗】弱网处理及断线重连方案

    [天天炫斗]弱网处理及断线重连方案 --hessionhe 一背景及问题描述 天天炫斗采用的是TCP长连接方式,消息交互使用的是TDR方案,弱网问题以及断线重连的情况在手游运营中都是非常普遍的,也会相 ...

  10. 手机游戏断线重连的实现

    1.断线重连的必要性 在端游时代,因为游戏环境比较固定,断网的可能比较小,断线重连就没有那么重要,甚至有的游戏都没有断线重连,判断你断线了直接返回到登录界面,走重新登录的流程. 但在移动设备的情况下, ...

最新文章

  1. 如何通过“流量线索”进行恶意程序感染分析
  2. 前端学习(3241):react生命周期forceUpdate
  3. Apache NIO 框架 Mina 使用中出现 too many open files 有关...
  4. 【数据仓库】——星型模型和雪花模型
  5. SQL:postgresqll查询某字段各情况数量
  6. 2022最全知识点——RF接口自动化框架项目实战
  7. android 音乐平板,酷狗音乐安卓Pad版
  8. Java FTP下载文件
  9. macOS 升级12.6后 Electron 应用闪退
  10. python添加图片要怎么弄_python怎么实现添加图片
  11. PO、VO、DO、TO、DTO、 BO、 QO、DAO、POJO
  12. Ubuntu修改系统时间到北京时间的步骤
  13. iOS -- 使用蒲公英进行内测
  14. ## 看看sass和less会遇到的问题吧
  15. 如何修改视频分辨率?
  16. 《星际探索》首席数码绘景师为你解析Blender场景制作
  17. 模型稳定度指标PSI
  18. [C++贪心习题]压缩歌曲
  19. 渗透测试--3.1.社会工程学攻击
  20. 诺基亚智能手机未来仅采用Symbian和MeeGo系统

热门文章

  1. C# winform 魔兽MH全图制作教程(3):魔兽1.20E.1.24B.1.24E全图内存地址 转自breeze...
  2. Echarts直角坐标系x轴y轴属性设置大全
  3. 2017计算机四级网络工程师,2017计算机四级网络工程师真题练习
  4. 输入法兼容 android,搜狗输入法5.1版发布 兼容Android 4.4
  5. win10自带邮箱无法登录QQ邮箱
  6. google建立快讯推荐被引用文章
  7. 143_iOS干货50_认识几个概念:跨域问题和内网穿透
  8. 一加8 pro 刷入 kali Hunter
  9. 阐述篇-聊聊我眼中の《面试宝典》
  10. 7-6 红包 (20 分)