我从Teltonika GPS设备获取数据,并将其存储在我的应用程序中。当我第一次连接时,我得到了数据,但是设备需要某种形式的确认,它正在等待。
谁能解释一下如何通过java套接字编程来处理来自GPS设备的数据?
发布于 2012-02-18 09:58:23
这将取决于设备和用于与其通信的协议,但作为一般规则,您需要确保套接字处于打开和侦听状态。
从您的问题的简要概述来看,我认为问题在于您自己强制关闭了套接字,或者您没有正确地侦听连接。
你的代码是否在调用Socket.accept()时有一个循环-类似于..
while (true) {
Socket socket = server.accept();
// handle the coms...
}基本上,为了保持与某些东西的沟通,你需要不断接受或‘倾听’回应,否则你只能得到一个回应。对accept的调用是一个阻塞调用,它基本上是等待客户端执行connect...but。如果不再调用它,您实际上已经停止了接受或‘侦听’。
发布于 2014-02-24 21:13:47
Teltonika设备通常在发送数据后等待确认。服务器的响应应该是解码点的数量(因为Teltonika设备将几个点打包在一起,在您解码它们的格式之后,您需要响应解码的gps点的数量)。
发布于 2016-09-16 17:37:23
您必须首先配置您的跟踪器,步骤如下所示:
为了启动配置过程,配置服务器发送包含服务器主机(ip地址)和tcp端口设备应连接并等待TCP连接的二进制启动SMS (“推送”SMS)。
在接收到“推送”SMS后,设备尝试使用GPRS建立到配置服务器的TCP连接。如果TCP连接尝试成功,服务器通过已建立的连接向设备发送配置数据,设备确认配置接收并配置自身。
如果设备没有在TcpWaitTimeout时间内连接到服务器,则服务器停止等待TCP连接,使用二进制短信发送配置数据,并等待来自设备的确认短信。如果确认短信未在指定时间到达,则服务器认为配置过程失败。

https://stackoverflow.com/questions/9323050
复制相似问题