我想为Android编写一个使用Google App Engine作为数据库后端的客户端应用程序。我的Android客户端将连接到App Engine以保存信息,然后它将在以后连接报告。是否可以将App Engine用作这样的后端?
答案 0 :(得分:8)
如果您正在寻找类似App Engine在python中使用的远程api之类的东西,那么您会发现Java中缺少它。
尽管如此,绝对没有什么可以阻止您通过POST / JSON / XML /您能想到的任何其他格式来点击您的应用并发布数据。恢复报告也是如此。
如果担心安全问题,OAuth协议允许您从Android设备向应用引擎进行身份验证。
这是暂时的,但就报告而言,您可能不会发现应用引擎是报告类型应用的非常合适的平台。只要确保你了解它的局限性 - 缺少连接,1000个对象限制,没有总和/平均值,必要的索引等等。这当然不是不可能的,但要仔细考虑你将如何建模数据。
答案 1 :(得分:5)
是的,这是可能的。
如果您的问题没有更多细节,答案中的任何细节都将是推测。
答案 2 :(得分:3)
是的,它非常有可能。这也是我目前正在努力的事情。
我的代码使用HTTP GET和HTTP POST,我在GAE上使用RESTful服务。
对不起,我无法提供任何代码,因为我还在学习,但我正在使用的库名为RESTLET。他们有GAE和Android的库,但是我只在GAE上使用RESTLET,而我只是在Android SDK中为客户端使用HTTP库。
您需要的版本是2.0 M6而不是稳定版本。
答案 3 :(得分:2)
否强>
在你对Laurence的回复中,你说你想要一个直接的数据库连接。客户端无法直接连接到GAE数据存储区。您必须编写Web处理程序以在客户端和数据之间进行接口。它不一定很多,但它必须是某种东西。
答案 4 :(得分:1)
是的,很有可能。但是,您不会直接连接到GAE数据库。更好的架构是让您的应用程序点击写入数据库的URL。例如,您可以set up a Struts 2 action获取查询参数的值,然后在持久化之前根据需要进行变更和验证。