Android 树莓皮-安卓通信

Android 树莓皮-安卓通信,android,java-me,raspberry-pi,Android,Java Me,Raspberry Pi,嗨,我正在尝试开发一个应用程序,通过它,人们可以使用安卓设备在互联网上控制raspberry pi。我的覆盆子圆周率运行Java我。 我的问题是如何让安卓设备和Raspberry pi相互对话? HTTP请求/响应有效吗? 请给我一些想法。我最近做了类似的事情——我有一个Android应用程序与Windows PC(C#app)对话。我自己也用过WebSocket,我建议大家看看这条路——双向通信比HTTP更高效/更快 如果您选择了这种方法,请寻找Java Websocket实现(也许),并让R

嗨,我正在尝试开发一个应用程序,通过它,人们可以使用安卓设备在互联网上控制raspberry pi。我的覆盆子圆周率运行Java我。 我的问题是如何让安卓设备和Raspberry pi相互对话? HTTP请求/响应有效吗?
请给我一些想法。

我最近做了类似的事情——我有一个Android应用程序与Windows PC(C#app)对话。我自己也用过WebSocket,我建议大家看看这条路——双向通信比HTTP更高效/更快


如果您选择了这种方法,请寻找Java Websocket实现(也许),并让Raspberry Pi运行一个Android应用程序可以连接并发送消息的服务器。

一位同事参与了一个类似的项目,他希望通过安卓手机控制连接到Raspberry Pi的灯光。如果您不想陷入使用WebSocket的复杂性,可以尝试使用。pi将运行Python PubNub SDK,手机将使用Android PubNub SDK。 完整的教程在这里


基本上,PubNub在引擎盖下打开套接字,但只为最终用户(开发人员)提供易于使用的发布和订阅。PubNub提供了一组实时“构建块”;利用开放式套接字连接的服务。

在Android手机和Raspberry Pi之间建立通信的一种非常简单的方法:

  • 在树莓皮上安装LAMPP()
  • 编写自己的php脚本来接收请求并执行操作
  • 你可以创建一个定制的Android应用程序,将你自己的url放在一个按钮点击上。()

  • 享受

    您可以使用VNC的轻松地将raspberry pi连接到Android设备。你只需要允许raspberry pi通过VNC连接,然后使用任何VNC应用程序(我使用bVNC),你就可以控制你的raspberry pi!您甚至不需要监视器,请查看官方教程:

    另一种可能的方法,取决于您的条件:对于正在工作的项目,我们只需在Android设备和使用JADE框架的RPI上成功运行Java编写的代理。创建代理非常简单,只是或多或少地对动作和反应进行编码。由于它是Pi上的Java,因此可以通过Pi的代理(例如用于GPIO访问的Pi4J库)非常轻松地访问Pi的硬件。但通过互联网可能很关键/不可能,因此如果不是所有代理都在同一网络中


    另一种方法,但对上面的文章来说并不是什么新鲜事:我在Pi上也做了类似的事情,我从Android应用程序调用了PHP API。

    也许你可以尝试使用安装另一个应用程序并与设备通信。如果你已经是安卓开发者,在安卓设备上设置Pi不会成为问题,并且可以通过缩短开发时间来为你带来好处

    我在局域网上使用了套接字,对我来说效果很好。通过http进行来回通信可能需要sql数据库来存储和检索结果,尤其是实时存储和检索结果


    让pi轮询使用http连接中央数据库,并使用android设备打开数据库开关。

    这取决于您想在raspberry tbh上执行什么操作,如果应用程序只发送一点数据,而实际上不需要持久连接,那么套接字连接就太危险了。一个简单的restfull HTTP服务的设置工作量要小得多。我同意在某些情况下这会有点过分,在我的情况下,应用程序控制鼠标移动,所以需要一个持久连接。尽管如此,它还是一个值得考虑的HTTP替代方案,特别是当你需要从服务器推送数据的能力时。我只想使用android应用程序打开/关闭连接到raspberry pi的家用电器。因此,在我的情况下,HTTP可以很好地工作。。对吧?是的,HTTP可以做这样简单的事情。如果这是唯一的用途,那么就不需要打开持久的Websocket连接。