Android - Ruby on Rails - MySQL

Gau*_*rav 3 mysql sqlite android json ruby-on-rails

我已经开始研究一个Android应用程序,我们需要使用MySQL作为数据库,使用Ruby on Rails作为服务器端代码.我们也将在设备上使用SQLLite(将在需要时同步DB).我搜索了网络,找不到任何相关的教程/示例,可以作为开始的基础.

我已经完成了MySQL和ROR教程,但仍然对将Android与ROR连接起来感到困惑.

有人可以分享一些相关的教程/代码片段,可以解释技术的完整链接.我的意思是如何将数据从Android设备发送到MySQL,反之亦然.我从理论上了解这个概念,但不知道如何以及从哪里开始.

我真诚地对提出这样一个基本问题表示歉意,或者我听起来含糊不清,但我是初学者,需要完成这项任务.在预期中感谢..

bts*_*tse 6

以下是您应该了解的目标的简要概述.我不会那么详细,特别是因为我从未亲自使用过RoR.请注意,其中一些部分可能与RoR无关,但其背后的一般概念仍然适用.我将由您来研究并弄清楚如何实现每个单独的组件.

一切的一般流程如下:

Android App <==>网络<==> Web服务<==> MySQL

请注意双刃箭头,因为数据将在两个方向上流动.

Android App是客户端,Web Service并且MySQL数据库位于你的Web Server.我只包含了网络部分的完整性,但是一旦将数据发送到网络,您就不必做任何事情.

每个部分的简要概述:

Android应用:

Android App是从Web服务器发送和检索数据的客户端.我假设在您的应用程序中,您将允许用户执行某些任务,这些任务本质上会成为您希望在某个时刻发送到服务器的数据.

例如,用户应该能够输入他的名字和喜爱的动物.假设用户可能会点击一个实际的"提交"按钮.单击此"提交"按钮时,它应将数据包装成适当的格式以通过网络发送.其中两个最常见的是JSONXML.一旦数据格式正确,您将需要使用某种类型的网络协议将数据发送到服务器,例如HTTP.为了发送数据,你当然必须有一些URL作为目标.让我们说目标是www.example.com/webservice.php.此目标是位于Web服务器上的Web服务.

一旦发送数据,服务器将回复一些数据,此时您可以随意执行任何操作.可能会将其显示给用户,或将其粘贴到SQLite数据库中,甚至两者都有.

要记住的关键是没有魔法.我刚刚描述的所有内容都将用Java代码实现,您将在某些时候在Android应用程序中编写.

关键想法你应该更多地研究并弄清楚如何在Java代码中实现:

  • JSON和XML
  • Java中的HTTP
  • REST和SOAP
  • 是一个关于设置Android应用程序结构的可能方法的精彩视频.
  • 确保您在其他线程上的Android应用程序中执行所有网络操作.一种易于使用的方法是Intent Service.

网络服务:

这通常是最令人困惑的部分.A Web Service只是尝试访问的客户端的一些入口点Web Server.我的解释在使用时可能略有不同RoR,但同样的想法适用.注意上面的目标URLwww.example.com/webservice.php.Web服务实际上PHP是Web服务器上存在的代码,称为webservice.php.在您的Android应用程序中,当您URL使用时向目标发送数据时HTTP,Web服务代码将在服务器上执行(并且还可以访问您发送给它的数据).在Web服务代码中,您基本上将提取数据(以某种格式,如JSON),获取必要的部分,然后使用它执行某些操作.在这种情况下,您很可能会查询数据库.在PHP中,编写连接和查询也在服务器上运行的MySQL数据库的代码很容易.当Web服务器检索到数据库的响应时,您可以将其发送回Android应用程序.和以前一样,请记住,没有任何魔法可言.所有这些想法都是通过编写一些代码来实现的.

研究的主要思路:

  • Ruby on Rails Web服务
  • 如何使用Ruby on Rails访问MySQL数据库

MySQL数据库:

您可以在此处将数据存储在Web服务器上.我不打算深入研究这一点,因为这只是要求你在如何在Web服务器上设置MySQL数据库上做大量的阅读.了解如何创建适当的查询(如SELECT,INSERT等等)也很重要.

研究的主要思路:

如何在Web服务器上设置MySQL数据库

如果您需要任何澄清,请告诉我们!