0

我是移动应用程序开发的新手,因此有几个问题。

目前我所在的团队即将为 Ice Cream Sandwich (4.0) 操作系统开发一个 android 移动应用程序。此应用程序将使用户能够填写存储在手机上的数据库中的个人资料信息。但是,由于数据库存储来自用户的私人信息,因此它应该是私人的。

该应用程序的目的是利用用户的个人资料信息以及来自在线数据库的美国地理区域(地形、气候、植物群、动物群)的信息,以计算他们能够生存的情况给定的时间。

我计划在 Eclipse IDE 中使用 Android 开发工具插件。

所以我想问几个主要问题:

  1. 我将使用 Java 开发工具中的什么来添加用户并将他们的个人资料信息输入到数据库中?换句话说,我将使用什么来与数据库通信?

  2. 由于应用程序将从在线数据库中提取信息,因此需要某种方式来传输和使用该信息。我可以用什么来做到这一点?

谢谢,

4

3 回答 3

0

您可以查看一些库。

对于数据库交互(本地),ORMLite很好。这使您远离编写原始 SQL、为您处理转义等。它为您将数据库行映射到 POJO(顾名思义)。

对于远程数据,您需要一个 REST(或 SOAP?或 ??)客户端。目前尚不清楚远程数据存储是否属于您,或者如果是,您是否已创建它。如果它已经到位,那么您在这里的灵活性就会降低。

Spring 框架提供了几个Android 库,其中一个用于使用 REST 服务,一个用于身份验证。我还看到有人提到泽西岛取得了成功。

如果您确实使用 REST,那么您将(可能)处理 JSON。杰克逊格森是这里的两个主要竞争者。两者都提供 POJO 和 JSON 之间的自动(反)序列化。我用过Jackson,下次我可能会尝试Gson。虽然 Jackson 很好,但我发现文档有点零散且难以理解。是的。

我最新的项目结合使用了 ORMLite、Spring 的 REST 库和 Jackson,效果非常好。

要点是:定义一些模型类,用 Jackson 的一些东西和 ORMLite 的一些东西来注释类和它们的字段,将 Spring 指向你的端点。Spring 将检索 JSON,Jackson 将其解析为模型对象,然后您可以使用 ORMLite 将其持久化到本地数据库。在另一个方向,从你的数据库中提取一些东西(ORMLite 将模型对象交给你),将模型交给 Spring,它使用 Jackson 在发送数据之前对其进行序列化。

于 2012-12-07T03:01:58.473 回答
0

对于 1 和 2,您可以开发允许 android 应用程序与远程数据库通信以插入或检索甚至从数据库中删除记录的 Web 服务。

这是一个很好的教程,可以让您了解如何开始这样做。请点击这里

于 2012-12-07T02:39:47.437 回答
0

阅读对 Android 的 SQLite 支持以及如何发出 HTTP 请求:

http://developer.android.com/guide/topics/data/data-storage.html#db

于 2012-12-07T02:43:13.413 回答