通过API查询天气数据需要我们提供城市ID作为查询依据。实际上和风天气提供了较为强大的模糊查询API,即提交城市名称的一部分部分或全部然后返回可能相关的一组城市ID。但是为了专注于现阶段的任务,我们硬性指定5个城市的ID作为查询对象。和风天气在文档中提供了城市ID清单,可以自行下载:
china-city-list.csv大家可以根据自己的趣味决定采用哪几个城市。在这里,我选取以下5个城市:
- CN101010800:延庆(北京)
- CN101131012:伊犁(新疆)
- CN101310304:南沙(海南)
- US3290097:洛杉矶(美国)
- AU2147714:悉尼(澳大利亚)
我们就暂时只考虑在这5个位置的基础上获得天气数据,而先不考虑在使用中动态的增减位置,这需要额外的技术和服务的支撑。
将这五个位置的ID作为字符串常量加入到代码中。打开MainActivity.java
,添加常量字符串数组LOCATION_IDS
如下:
再定义一个字符串常量KEY
来保存我们的API密钥:
KEY: d2ae781d61744d65a2ef2156eef2cb64
下一步,我们根据这5个选定的位置ID来发起网络请求以获取JSON格式的天气数据。
本小节改动的文件:
modified: app/src/main/java/com/dmtech/iw/MainActivity.java
网友评论