获取当前位置的天气更新?

时间:2011-08-04 05:23:55

标签: android weather

我有什么:纬度和经度。

我想要的是什么:获取这些坐标的天气更新。

3 个答案:

答案 0 :(得分:3)

如果您想使用Google Weather API,则必须将其传递给城市,州或邮政编码。为此,您需要对您的纬度/经度进行GeoCode以获取此信息。

以下是Google Weather API的网址:http://www.google.com/ig/api?weather=Seattle,WA

这是一个采用lat / long并转换为zip的示例代码:

Geocoder geocoder = new Geocoder(this, Locale.ENGLISH);

List<Address> addresses = null;

try {
    addresses = geocoder.getFromLocation(latitude, longitude, 3);
} catch (IOException ex) {
    //Handle IOException
}

for (int i = 0; i < addresses.size(); i++) {
    Address address = addresses.get(i);
    if (address.getPostalCode() != null)
        String zipCode = address.getPostalCode();
}

然后将邮政编码(或城市,州)传递给Google Weather API并解析返回的XML。祝你好运!

答案 1 :(得分:2)

google API已关闭,因此您应该寻找替代方案。 http://openweathermap.org/api

答案 2 :(得分:1)

您需要使用API​​。你必须自己做一些研究,这是一个好的研究。

http://www.weather.gov/xml/