通过Wifi,蓝牙或USB实现Android和PC数据传输的框架?

时间:2012-11-27 10:23:37

标签: android windows controls wireless transfer

我正在编写一个无线控制Android手机的Windows应用程序,例如发送短信,拨打电话,查看文件,检索传感器数据等。我只是通过WiFi使用IP套接字,但客户端必须知道IP地址连接到服务器。 我想知道是否有一个框架/ API可以实现这种数据传输,无论是通过wifi,蓝牙还是任何其他连接方法,还有一种自动发现机制?我听说过英特尔CCF(Common Connection Framework),但找不到有效的参考资料。你认识其他人吗? MTP?

谢谢, 利奥

2 个答案:

答案 0 :(得分:1)

我写了一个名为cross copy的小型开源实用程序来执行此类操作。虽然有一个网络应用程序,使您可以进行设备间复制和粘贴,下面的RESTful API可能就是您所需要的。基本概念是通过共享公共代码字来通过服务器连接设备。

我建议您在应用中显示一个简短生成的代码字(如'a9b3c')并在后台打开一个监听请求(长轮询):

GET   http://cross-copy.net/api/a9b3c

然后,您的Windows应用程序应该有一个“设备链接”文本字段,可以输入代码字。您可以通过调用

来验证是否有设备正在侦听
GET   http://cross-copy.net/api/a9b3c?watch=listeners&count=0

如果你想从Windows应用程序发送短信,你只需要用你应用可以理解的某种数据结构对代码字执行PUT请求(例如.json,xml,...):

PUT http://cross-copy.net/api/a9b3c
    { 'command' : 'send sms', 'number' : '0913342133', 'msg' : 'the message which has been typed on the pc' }

答案 1 :(得分:0)

有3种WiFi模式/协议可以帮助您:

  1. SoftAP模式 - 您的桌面WiFi设备充当热点,您的Android设备连接到它就像普通AP一样。如果设备驱动程序支持,则在Win7 / 8上受支持。
  2. WiFi Direct - 允许2个WiFi设备在没有AP中介的情况下在P2P网络中连接的协议,它是SoftAP模式的自然扩展。如果设备驱动程序支持,则在Win7 / 8上受支持。
  3. WiFi IBSS模式 - 用于两台设备之间数据交换的旧协议。在任何符合802.11标准的(WiFi)系统上均受支持。