Android应用程序使用在线数据库作为它的后端是一个很好的设计吗?

时间:2014-08-05 22:28:18

标签: android

我正在开发一个Android应用程序,我不断看到像Parse和Google AppEngine这样的东西。所以我很好奇,这是一个好的"应用程序使用在线数据库作为其后端的解决方案?

插入,更新,选择之类的东西 - 只是来自我的网络服务器上的MySQL数据库?

如果没有,我的应用程序应该使用什么?我正在寻找我的选择,而不是一个精确的答案

3 个答案:

答案 0 :(得分:1)

是的,你当然可以做到这一点。您只需要在访问在线数据库之前创建Web服务。

通过HTTP或HTTPS进行POST,GET,PUT,DELETE等Web服务

答案 1 :(得分:1)

您应该考虑使用专为此类内容设计的数据库,而不需要用户帐户。像这样的数据库是couchdb,或者你使用的是专为此而设计的系统。

OpenFire和aSmack是一个好的开始,但是如果你想构建类似时间线的东西,你应该使用webservices。

具有POST / PUT参数的网站可以适用于这种情况。如果你想在这种情况下使用更专业的服务,比如SOAP。

答案 2 :(得分:1)

将用户数据存储在一个集中位置是大多数开发人员会做的事情(除非有充分理由使用点对点)......

...但是移动设备尝试直接与数据库服务器通信存在一些缺点:

  1. 需要为可能需要访问数据的每个平台(Android,iOS,移动网络)重写低级SQL代码

  2. 客户端和服务器将紧密耦合,难以更新

  3. 管理防火墙的工作量会更多,因为它们通常会阻止数据库服务器使用的端口。

  4. 没有这些问题的替代方法是编写一个Web服务(它经常由数据库服务器支持),为移动客户端提供自定义API。这是另一层代码,但可以说随着时间的推移会得到回报。