Android TCP/UDP开源库NetworkDebugAssistant使用教程

  • 前言
  • 使用方法
    • 添加依赖
    • UDP广播
    • UDP组播
    • TCP客户端
    • TCP服务器
  • 混淆规则
  • GitHub

前言

之前开发的通讯工具,已经上架酷安和Google play store,链接在下方:
酷安 - Network Debug Assistant
Google play store - Network Debug Assistant

包括以下功能:

  1. udp广播;
  2. udp组播测试;
  3. Tcp客户端;
  4. Tcp服务器;

现在,终于有时间将它整理成一个单独的库,能直接在其他项目中快捷接入使用。

使用方法

添加依赖

  1. 将JitPack存储库添加到您的构建文件中
    将其添加到存储库末尾的root build.gradle中:
allprojects {    repositories {        google()        jcenter()        maven { url 'https://jitpack.io' }            }}
  1. 添加依赖项
dependencies {implementation 'com.github.D10NGYANG:NetworkDebugAssistant:0.1.3'}

UDP广播

        val thread = UdpBroadThread(this, 12345, object : OnNetThreadListener{            override fun onAcceptSocket(ipAddress: String) {                // 不需要            }            override fun onConnectFailed(ipAddress: String) {                // 打开端口失败            }            override fun onConnected(ipAddress: String) {                // 打开端口成功            }            override fun onDisconnect(ipAddress: String) {                // 关闭UDP            }            override fun onError(ipAddress: String, error: String) {                // 发生错误            }            override fun onReceive(ipAddress: String, port: Int, time: Long, data: ByteArray) {                // 接受到信息,ipAddress消息来源地址,port消息来源端口,time消息到达时间,data消息内容            }        })        // 发送数据        thread.send("192.168.1.123", 12345, data)

UDP组播

        val thread = UdpMultiThread(this, "192.168.11.255", 12345, object : OnNetThreadListener{            override fun onAcceptSocket(ipAddress: String) {                // 不需要            }            override fun onConnectFailed(ipAddress: String) {                // 打开端口失败            }            override fun onConnected(ipAddress: String) {                // 打开端口成功            }            override fun onDisconnect(ipAddress: String) {                // 关闭UDP            }            override fun onError(ipAddress: String, error: String) {                // 发生错误            }            override fun onReceive(ipAddress: String, port: Int, time: Long, data: ByteArray) {                // 接受到信息,ipAddress消息来源地址,port消息来源端口,time消息到达时间,data消息内容            }        })        // 发送数据        thread.send("192.168.11.255", "12345", data)

TCP客户端

        val thread = TcpClientThread("192.168.1.123", 12345, object : OnNetThreadListener{            override fun onAcceptSocket(ipAddress: String) {                // 不需要            }            override fun onConnectFailed(ipAddress: String) {                // 连接服务器失败            }            override fun onConnected(ipAddress: String) {                // 连接服务器成功            }            override fun onDisconnect(ipAddress: String) {                // 服务器连接断开            }            override fun onError(ipAddress: String, error: String) {                // 发生错误            }            override fun onReceive(ipAddress: String, port: Int, time: Long, data: ByteArray) {                // 接受到信息,ipAddress消息来源地址,port消息来源端口,time消息到达时间,data消息内容            }        })        // 发送数据        thread.send(data)

TCP服务器

        val thread = TcpServerThread(12345, object : OnNetThreadListener{            override fun onAcceptSocket(ipAddress: String) {                // 有客户端连接上来了,ipAddress客户端IP地址            }            override fun onConnectFailed(ipAddress: String) {                // 启动服务器失败            }            override fun onConnected(ipAddress: String) {                // 启动服务器成功            }            override fun onDisconnect(ipAddress: String) {                // 关闭服务器            }            override fun onError(ipAddress: String, error: String) {                // 发生错误            }            override fun onReceive(ipAddress: String, port: Int, time: Long, data: ByteArray) {                // 接受到信息,ipAddress消息来源地址,port消息来源端口,time消息到达时间,data消息内容            }        })        // 发送数据给特定客户端        thread.send("192.168.11.255", "12345", data)        // 发送数据给全部已连接的客户端        thread.send(data)

混淆规则

# 保留UDP/TCP库-keep class com.dlong.dl10netassistant.** {*;}-dontwarn com.dlong.dl10netassistant.**

GitHub

D10NGYANG/NetworkDebugAssistant

更多相关文章

  1. Android通讯录管理(获取联系人、通话记录、短信消息)(二)
  2. Android(安卓)无法debug的问题
  3. 插曲1-项目开始前夕【我的第一次云项目连载】
  4. android之lint警告This Handler class should be static or leak
  5. 【ERROR】---Error executing "adb devices":ADB server didn't
  6. Android个推使用
  7. Android(安卓)在子线程中更新UI的几种方法
  8. Android向node.js编写的服务器发送数据并接收请求
  9. appium并发测试

随机推荐

  1. android TextView 部分文字变色 工具类
  2. Android TV -5.1- Developing a TV Input
  3. android 大图片拖拽并缩放实现原理
  4. 用Eclipse调试Android x86
  5. android文件操作工具类
  6. android 子线程handler 实现
  7. Android ADB Commands Using Batch File
  8. android java代码覆盖率
  9. android图片异步加载解决步骤
  10. Android系列教程(1):Notification 与状态栏