目前各縣市政府都有提供許多各式各樣的公開資料,那要如何在App上,得到這些資料呢?
原理與網頁相似,發送Request並接收Response,Android提供了許多方法,像是HttpURLConnection、Volley等,這邊我使用Volley,可以省去一些繁瑣的撰寫,公開資料我使用了臺北市政府資料開放平台-台北捷運列車到站站名,可以得知目前列車進站的站名、該列車終點站更新時間等資訊。
完成圖↓
dependencies {
...
compile 'com.android.volley:volley:1.0.0'
}
修改我們之前RecyclerView放資料的容器「recycler_textview.xml」,改為「recycler_metroinfo.xml」,並新增多個TextView,用來顯示資訊。
recycler_metroinfo.xml
修改「fragmentlist_one.xml」,新增一個ProgressBar,當在請求資料時,有一個loaing圖示,當資料處理完畢,再將資料RecyclerView顯現出來。
fragmentlist_one.xml
再來修改FragmentList_One.java,使用Volley來獲取臺北捷運列車到站資訊。
FragmentList_One.java
最後,修改Adapter「RecyclerViewAdapter.java」。
RecyclerViewAdapter.java
資料來源:Sending a Simple Request
Making a Standard Request
完整專案:Solinari GitHub