2013-12-12 44 views
8

因此,我对手机应用程序开发相当陌生。目前正在为移动应用程序制作项目文档,并且希望对我应该使用的数据库解决方案提供一些意见。为手机应用程序选择数据库的最佳做法

1)移动应用程序 - >在线唯 - >与一个数据库

2)我有几个Web服务器运行起来(MySQL的居多),可以使用?

所以我的问题很简单:)我应该为我的移动应用程序数据库使用什么解决方案。 - 在服务器上安装mysql数据库? - 使用某种基于云的解决方案? - 任何API considurations?

  • 对于android和ios都需要是“最佳实践”。

任何和所有的建议非常感谢!谢谢大家!你太棒了!

回答

2

汤姆 - 如果你需要数据在没有互联网连接的情况下离线使用,那么你应该使用SQLITE数据库作为android/ios的一部分。

如果您的应用程序将数据保存在服务器上,而服务器又被其他门户或其他设备使用(共享),则考虑通过网络/服务器和mysql数据库存储数据。

这真的取决于使用和共享的要求。本地存储的数据有很大的好处,因为它更快,无需网络,数据始终可用,并且不使用网络也增加了电池的使用寿命..

+0

感谢您的输入。要求是人们彼此分享“数据”。不会进入特定的,但基本上,人1打开应用程序,并看到人2,3,4数据。因此注册并共享数据。任何关于保存/检索mysql数据的最佳实践的意见?建立一个API? – Tom

+2

在这种情况下 - 你也需要服务器组件。服务器应该公开Web服务。 Webservice可以是最适合手机的REST/JSON类型。为了提供最佳的用户体验,您应该将数据与服务器同步并在SQLITE本地存储(在iOS中,您使用核心数据来使用sqlite)。 – Jailbroken

+0

那么mysql(innodb)是一个很好的解决方案?无需为移动应用程序提供任何“特殊”数据库解决方案?建议在服务器端使用什么REST方法?有什么需要看看? – Tom

4

汤姆,

此问题的最常见的解决办法是:

1)您的应用程序通过服务器中的web服务获取数据。您可以使用基于XML通信的Soap解决方案或简单的REST访问(GET或POST方法中的简单http请求)并使用您自己的选择:XML或JSON。 今天,有很多基于REST GET/POST和JSON文件通信的解决方案。

2)之后,如果您希望应用程序可以在离线模式下进行转换或者只是更加反应性,则可以通过webservice将旧加载的数据存储在本地数据库中。 为此,在Android中,您可以使用对sqlite数据库的直接访问,而在iOs中,您可以使用CoreData API。

希望它能帮助你。

Fabecc。

相关问题