【发布时间】:2018-05-22 16:16:43
【问题描述】:
我有一个 GPS 跟踪器设备,我已经运行了一个 TCP/IP 服务器代码,它成功地在单独的线程中与每个设备建立了连接,并且设备在一分钟后继续发送其心跳,服务器回复开启。当我发送命令以获取设备位置时,它会为我提供位置并且一切正常。
现在我想使用网络服务从 android 设备获取位置,现在我很困惑如何从 Android 应用程序使用特定设备的运行线程?
【问题讨论】:
-
Android web 服务将是一个两端口应用程序。一个端口使用 IP 地址连接到 GPS 跟踪器设备。第二个端口是使用 HTTP 的网页应用程序(端口 8080)。在应用程序中,您将需要一个网页应用程序的方法来从 TCP 类中获取结果。
-
请解释一下,我想你已经理解我的问题了。如果我想编写 Rest 服务,那么我将如何使用我的设备连接呢?
-
您将使用 android 的 IP 地址使用 Webrequest(或任何 Web 方法,如 WebClient)从客户端连接到服务。响应将包含 GPS 跟踪器位置。 Rest 将从 TCP 连接中获取结果并将 TCP 字节重新格式化为字符串并在响应中发送给客户端。
-
但是设备会启动连接,然后继续在单独的线程中发送其心跳。为了获得它的位置,我需要发送位置,我需要发送位置获取流。如果设备在套接字 A 上发送其心跳,那么它将如何在任何其他套接字上给出其位置?
-
我在答案中分享我的代码。
标签: c# tcp tcp-ip tcplistener tracker