2013-08-07 98 views
0

我有应用程序的Android和PC的另一个应用程序,都是由我写的。 Android应用程序连接到PC应用程序,PC应用程序将数据(实时)发送到智能手机。数据转发服务器

问题是:如果PC连接到移动无线网络,我无法获得它的地址,所以我无法将我的Android应用程序连接到PC。

那么,是否有一些简单的应用程序(用于Windows),我可以使用它作为数据转发的服务器。 PC和移动应用程序将连接到此服务器(在静态地址的站点上启动),并且服务器只会将数据从一个应用程序转发到另一个应用程序?

或者也许有很好的教程来创建这种类型的服务器在C#/ Java?

+0

你使用哪种通信协议? – orique

+0

TCP。当移动应用程序直接连接到PC时,我工作得很好。但是我打算使用UDP来减少延迟。 –

回答

0

我会使用第三台PC(一台服务器),充当Android和PC的桥梁。我在网络上为一个虚拟服务器编写了一个.NET服务。 Android和PC都知道服务器的IP地址(或域名)。

PC使用.NET本机Web服务调用与服务器对话,Android使用kso​​ap。

有关KSOAP为Android看看这里更infomration:

http://code.google.com/p/ksoap2-android/

编辑: 我想你可以在PC上的Web服务器,但您需要将您的调制解调器配置转发特定端口到电脑。但是,如果您没有静态IP地址,则每次重新启动调制解调器(或关闭/打开)时,都需要重新配置Android设备上的IP地址。您也可以尝试使用动态DNS服务...

+0

该解决方案对PC用户来说必须简单。用户只需启动应用程序并按“连接”,然后在服务器端发生所有奇迹,服务器等待来自移动应用程序的连接,然后转发数据。我创建了一些这样的服务器,但它不是很好)因此,我需要一个完整的服务器单元(库,应用程序)或用于创建它的教程。 –

+0

嗯,我写我自己的服务器,它工作正常。您在服务器中使用了Web服务吗? –

+0

我在Java上写了它,但我打算在C#上完成它。只是寻求正确的方式处理断开,异步接收/发送。 –

0

检查了这一点: http://whiletrue.blog.com/2013/07/11/smartphone-as-pc-controller/

我已经Muzzley使这个。基本上,如果你整合了它,你已经完成了大部分工作。 (声明:我为这个项目工作)

在PC端,您可以用lib中你有几种语言的PC应用程序:

在智能手机方面,你可以使用任何存在的部件(虚拟接口)的:

或最终让你自己:

例子:

您可以从GitHub的几个例子在这里拉:

(检查web视图的例子)

我希望它有帮助。