考虑一个客户端 - 服务器应用程序,作为Android应用程序的客户端。众所周知,每次我们想要从服务器访问/下载信息时,我们都必须经历一些必要/宗教的步骤。
我们假设我们想使用openweathermap.org API检索过去7天的天气信息。从客户端(Android)的角度来看,有必要:
有时甚至还有更多事情要做,使得从服务器获取可用信息的过程变得痛苦。
我想知道是否存在任何为我们处理这个问题的库,可能是通过带有多个构造函数的简单方法,这些构造函数将从一个单独的Thread或其他东西中调用。
我听说过www.spring.io,但这似乎是一个巨大的项目,感觉就像用大锤敲打坚果一样。
答案 0 :(得分:2)
使用此
https://github.com/mcxiaoke/android-volley
将此添加到build.gradle:
compile 'com.mcxiaoke.volley:library:1.0.17'
它非常棒并且处理除解析之外的所有上述任务,用于解析使用,
compile 'com.google.code.gson:gson:2.3.1'
它将帮助您通过反射解析数据我可以附加样本(如果您需要)
答案 1 :(得分:2)
一年前我用他们的api玩了一下,我还用了一个Volley库来做。代码可以在GitHub上的我的回购中找到。
https://github.com/tnovoselec/HrPrognoza
但是,我建议现在使用Retrofit库进行网络通话。它使用简单,功能强大。
答案 2 :(得分:1)
在这里要求工具是偏离主题的,所以我不会给你任何建议。我会告诉你如何做到这一点不那么痛苦:
所以,如果你创建一个OpenWeatherMapRequestHandler
,它能够准备参数,发送get或post请求并调用回调(可能通过反射),那么你就拥有了核心逻辑,以后可以轻松使用
稍后,如果您必须向给定的API发送请求,例如openweathermap,那么您可以创建一个extends RequestHandler
{{1}}。
当然,您可以使用其他工具简化您的生活,但这是您需要的逻辑。