【发布时间】:2018-07-21 04:04:18
【问题描述】:
我决定从事一个开源项目。 该项目包括与串行端口的通信。这里是link 到它接受通过串行端口通信的一般命令参考。 该项目的开发人员给了我一个提示(Java 代码)关于它如何连接,以及我将如何读取/写入数据到串行端口。 他是这样说的:
创建套接字的调用(通常到 192.168.0.1 和端口 9999):
Socket s=new Socket(ip,port);
还有几个对象可以完成这项工作:
BufferedReader in = new BufferedReader(new InputStreamReader(s.getInputStream()));
BufferedWriter out = new BufferedWriter(new OutputStreamWriter(s.getOutputStream()));
char c;
out.write(":MS#");
if (in.ready()) c=in.read();
提到的代码包括通过 Socket 的连接。我将如何在 iOS Swift 中做同样的事情。 一些提示将不胜感激。
【问题讨论】:
-
有像CFNetwork这样的内置套接字服务和新的Network framework(仅限iOS12 - 仍然是测试版),但使用像CocoaAsyncSocket这样的库可能更简单
-
我会试一试。虽然我不知道沟通是如何进行的。任何建议将不胜感激:D
-
快速查看似乎“串行端口”实际上是侦听 TCP 套接字的终端服务器。您打开到该套接字的网络连接,您在输出流上发送的任何数据都从串行端口发送出去,发送到串行端口的任何数据都通过与连接关联的输入流传递
-
太棒了!我要试一试。谢谢。
-
您需要熟悉处理异步事件,因为轮询串行端口以获取数据或阻止等待输入不是一个好主意
标签: java ios swift sockets socket.io