如何判断Android openweatherMap API中的城市是否不正确?

时间:2015-05-13 04:18:31

标签: android weather-api android-xmlpullparser openweathermap

我正在使用 XmlPullParser 来解析API中的天气信息。我的应用程序在用户进入他的城市(输入)后显示天气信息。如果我在文本框中输入“London”,我的应用程序将转到this并从xml中获取温度,湿度等(此时一切都按预期工作)。但是当我进入“Londonsd”时,我的应用程序就会挂断。

当我输入错误的城市时,我从服务器收到的消息是“{”消息“:”错误:找不到城市“,”cod“:”404“}”。

1 个答案:

答案 0 :(得分:1)

如果成功获取xml,您将获得两种类型的数据响应,如果失败,则json首先使它们相同。我建议您通过更改mode=json http://api.openweathermap.org/data/2.5/weather?q=London&mode=json&units=metric来使用json。

之后,您可以检查cod如果有404则城市无效。

您可以尝试response.contains("\"cod\":\"404\"");response.contains("Not found city");来检查错误。但不是理想的解决方案。