简单学习了一下Jsoup,但是发现爬不到所需的数据,偶然中发现了论坛大佬发布的API,于是使用API来获取数据。由于目前还不会制作表格,所以只对河北省的信息进行了可视化管理。
1、数据的获取
1、实体类的创建
根据API所返回的数据,设计如下实体类:
1 | package com.example.fightvirus; |
2、volley
使用volley来获取数据,再使用Gson来对数据进行反序列化。
依赖:
app中
1
2implementation 'com.google.code.gson:gson:2.8.6'
implementation 'com.android.volley:volley:1.1.1'project中
1
2
3
4
5allprojects {
repositories {
maven { url 'https://jitpack.io' }
}
}简单使用
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19RequestQueue queue = Volley.newRequestQueue(getActivity());
StringRequest stringRequest = new StringRequest(StringRequest.Method.GET,
"URL(API接口)",
new Response.Listener<String>() {
public void onResponse(String response) {
Gson gson = new Gson();
Type userListType = new TypeToken<ArrayList<MyJson>>(){}.getType();
List<MyJson> myJsonList =gson.fromJson(response,userListType);
myJson = myJsonList.get(0);
initMyView(myJson);
}
}, new Response.ErrorListener() {
public void onErrorResponse(VolleyError error) {
Log.e("myTAG", "onErrorResponse: " + error);
}
});
queue.add(stringRequest);
2、页面的布局
- 上方展示确诊人数、治愈人数、死亡人数。
- 下方将各市的信息通过柱状图的形式展示出来。
3、逻辑代码
1 | package com.example.fightvirus; |