我想开发一款在手机上运行的应用程序。它就像一个服务器,可以通过 PC 应用程序访问,并请求移动信息,例如 GPS 坐标。运行此应用程序的手机将自动响应,无需人工操作。
重点是手机可以处于 GSM/CDMA 或 Wifi 网络中,其 IP 地址是动态分配的。
你们知道如何通过动态 IP 分配连接到公共网络上的服务器吗?
PS 手机可以连接PC app,因为我可以在PC端设置dns服务。告知大家一下。
问候
答案1
尝试从移动网络上的设备获取数据会很麻烦。它很可能位于 NATed IP 上,这意味着无法直接访问,而且没有简单的方法可以解决这个问题。
你最好将移动设备上的软件改为某种形式的守护进程,推动将数据传输到集中式服务器,而不是尝试让服务器从手机中提取数据。
当然,您还可以使用其他黑客手段,例如实施类似 SSH 隧道的手段。在这种情况下,移动设备将与集中式服务器建立 SSH 连接,然后允许通过特定端口连接回移动设备。但是,如果使用多台设备进行管理,这将是一场噩梦。
答案2
一个解决方案是,在类似以下服务上注册手机的主机名:动态网络并让手机在动态IP发生变化时及时更新。
如果是 GSM,您可能能够访问它,但如果是在 WiFi 上,则肯定无法访问,没有任何端口重定向......很困难。