我正在使用 xmlpullparser 来解析API的天气信息。一旦用户进入他的城市(输入),我的应用程序显示了天气信息。如果我在文本框中输入"伦敦",我的应用程序将转到此内容,并从XML中获取温度,湿度等(此时一切都按预期工作)。但是当我输入" londonsd"时,我的应用程序挂断了。
当我输入不正确的城市时,我从服务器中获取消息是" {"消息:"错误:找不到的城市"," COD":" 404"}"。
如果成功获取XML,并且如果失败让JSON使它们首先相同,那么您将获得两种类型的数据响应。我建议通过更改mode=json
http://api.openweathermap.org/data/2.5/weather?q=london&mode=jjson&Amp;units = metric。
之后,如果有404,则可以在cod
上进行检查。
或
您可以尝试response.contains(""cod":"404"");
或response.contains("Not found city");
检查错误。但不是理想的解决方案。