2011-05-29 106 views
0

我找到了围绕Android的方法,迄今为止都非常棒。我的下一个重大挑战就是要抓住Web服务。我想构建一个应用程序,从Web服务器上的网站或数据库读取数据并将数据存储在我的应用程序中。Android - 从网站获取数据

基本上,这将是一个应用程序,我与一个新闻网站一起构建,将他们的最新文章引入应用程序。我发现困难的是如何弥合我的应用程序和SQL Server数据库中的数据之间的差距。

我很熟悉构建从数据库中读取数据的asp网站,但我该如何做一些类似的应用程序?

我是否要求网站以xml格式存储文章?或者,有没有另外一种方法可以请求特定文章并提供内容?

我希望我正确地解答了这个问题,并且有人可以指导我以正确的方式来解决这个问题。

在此先感谢。

回答

1

您可以从不同的角度来处理这个问题。

常见的解决方案是构建一个Web服务,它将弥合您的移动应用程序和保留在服务器中的数据之间的差距。我personnaly喜欢设置一个Rails后端,因此有一个RESTful API,可以帮助我访问我的数据。例如,要检索文章列表,我可以请求以下URL:http://my_server_host/articles。因此,对于Webservice部分,您可以拥有任何您想要的:Rails,J2EE,.NET等。您可以选择适合您需求的模型(REST,SOAP,XML-RPC等)。

然后,您将不得不编写一个类,其中包含所有对您构建的Webservice的必要调用。基本上,如果您的Web服务将结果作为XML格式返回,您将必须:

  • 将请求发送到相应的URL。 (如果您想修改资源,请参阅:HttpGet或HttpPost)。
  • 解析返回的XML。 (总之,你可以使用SAX或DOM解析您的XML响应,并将其转化为商业实体(文章,用户等)。)

此希望给你一个关于一个可能的解决方案提示。顺便说一句,Google是你的朋友,但我可能会回来添加外部链接/资源来帮助你。

编辑

另一种可能的解决方案,可以为你工作,因为所有你需要的是找回了一些文章。例如,只需设置一个简单的WordPress博客。 Wordpress为您提供了该博客RSS源的URL,您只需解析该RSS源(XML)即可。在IBM网站上有一篇关于解析RSS feed的文章,您可以找到here。顺便说一下,这种解决方案只有在您想要将您的文章保存在Wordpress博客上时才有可能。但你有希望得到这一点。

+0

感谢您抽出宝贵时间。我可以收集的是我需要某种中间层来为我提供数据。 XML似乎是最简单的方法。我只想要最新的10篇文章,并将它们保存在应用程序的SQLite数据库中。 我对web服务的想法很好奇。因为我真的不那么熟悉Google,所以我会这么做。 – Richard 2011-05-30 07:15:07

+0

要明确,但Web服务仍然需要提供的数据为XML?没有办法像使用SQL检索记录一样简单地将数据推送或从web服务读取到应用程序? – Richard 2011-05-30 07:16:40

1

从服务器上的数据库中读取数据将是不好的做法。你将不得不开放一些端口,这不是你想要的(如果你没有root权限,你也不能)。

对于非交互式内容(您想要的),您可以使用XML或JSON。

+0

谢谢。我将开始阅读JSON以了解它。非常合适。 虽然,为了利益,如果我想将数据推回服务器上的数据库,您将如何处理这个问题? – Richard 2011-05-30 07:17:28