资料介绍
软件简介
VNanoMsg是Android下的Socket通讯库,对NanoMsg的二次封装,仿照NNanoMsg的第三方开源库。
使用方法
添加依赖项
在build.gradle中加入VNanoMsg的引用
核心函数
创建对应的通讯模式
绑定地址(服务端)
//绑定地址 地址要写全如上 tcp://加地址 //返回是 bool ture是成功 false是失败 var res = nn.bind("tcp://*:8080")
连接服务端
//连接服务端 地址要写全如上 tcp://加地址 //返回是 bool ture是成功 false是失败 var res = nn.connect("tcp://localhost:8080")
发送数据
//发送数据 String //返回值:发送的字节数 Int var res = nn.send("你好") //发送数据 ByteArray //返回值:发送的字节数 val msg = "你好" val bytes = msg.toByteArray() var res = nn.send(bytes)
接收数据
//接慢数据 //返回值:接收到字符串 String var res = nn.recv() //接收数据 //返回值:接收的数据 ByteArray var res = nn.recvbyte() val msg = res.toString(charset = Charsets.UTF_8)
设置/取消订阅前缀
==订阅消息只针对PUBSUB模式才有的参数==
//设置订阅前缀 //返回值:大于0成功,小于0失败 Int var res = nn.subscribe("输入要订阅的主题字符串") //取消订阅前缀 //返回值:大于0成功,小于0失败 Int var res = nn.unsubscribe("输入要取消订阅的主题字符串")
特别说明
==执行连接、发送、接收数据时需要加上try catch防止程序崩溃,因为在NDK中接收失败或是发送失败时我都会直接抛出异常来
==
简单例子
这里用的是REQREP的模式,别的模式就是在创建时设置对应的类即可。
class REQREPActivity : AppCompatActivity() { private var nnreqrep: NNREQREP? = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_reqrep) //连接按钮 btnConnent.setOnClickListener { if (nnreqrep == null) { nnreqrep = NNREQREP() } nnreqrep.let { try { if (it?.connect(edtipadr.text.toString())!!) { tvmsg.append("REQREP连接成功!\r\n") } else { tvmsg.append("REQREP连接失败!\r\n") } } catch (e: IllegalArgumentException) { tvmsg.append(e.message.toString() + "\r\n") } } } //发送按钮 btnSend.setOnClickListener { nnreqrep.let { try { val input = edtinput.text.toString() val bytes = input.toByteArray() //发送数据 it?.send(bytes) //延时50毫秒 Thread.sleep(50) //接收数据 val recvbyte = it?.recvbyte() val recvmsg = recvbyte?.toString(charset = Charsets.UTF_8) tvmsg.append(recvmsg + "\r\n") } catch (e: IllegalArgumentException) { tvmsg.append(e.message.toString() + "\r\n") } } } } }
- 基于Android平台的个性通讯录
- 基于openharmony适配移植的Socket通讯教程 3次下载
- 库卡机器人Ethernet/IP通讯设置手册 18次下载
- C++ Socket网络编程大全源代码下载 25次下载
- 如何使用Socket实现TCP和UDP的原理探索 9次下载
- 使用Socket通讯机制实现QUEST仿真系统与管理信息系统的数据交换论文 10次下载
- SOCKET入门最简单的程序免费下载
- 如何使用android socket连接openwrt与arduino单片机串口双向通信
- 如何进行socket集群详细方案资料说明 17次下载
- 如何使用socket进行双机通讯
- Android游戏库的安全性分析与验证 3次下载
- Android Studio学习教程(电子书+源码)资料下载 0次下载
- Android开发的各大网络请求库实际案例 4次下载
- 基于jdbc数据库与Android的餐厅智能管理系统 17次下载
- socket 370 cpu主板电路图
- 工业树莓派的Socket通信之旅:探索智能工业应用的无限可能 751次阅读
- Socket缓存究竟如何影响TCP的性能 1581次阅读
- 基于Android客户端和数据同步技术实现移动点餐系统的应用方案 4610次阅读
- 基于TCP/IP网络协议和SOCKET接口实现组态软件通讯模块的设计 3738次阅读
- 如何实现ABB机器人和视觉系统间的TCP/IP通讯呢? 2.1w次阅读
- ABB机器人如何与相机详细方法通讯图文讲解 1.6w次阅读
- Linux内核与Android的关系 4504次阅读
- android允许读写访问及各种权限说明 6504次阅读
- 一切皆Socket!Socket是什么? 5215次阅读
- 基于LBS的Android校园服务APP客户端的设计 3545次阅读
- udp和tcp的区别在哪里 8485次阅读
- Android中实现简单的新闻列表 3769次阅读
- 基于Android完整UDP通信模块的实现 1693次阅读
- 如何开发车联网,技术很重要 3346次阅读
- 多网络和Linux代理的Android无线远程控制系统 3603次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多