iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 12
0
Software Development

Kotlin 2018連續開發30天系列 第 12

Kotlin 2018連續開發30天 第三方網路連線庫-volley

  • 分享至 

  • xImage
  •  

現在主流第三方網路連線庫有三種

  1. okhttp
  2. volley
  3. retrofit
    第一種於去年時有介紹過
    所以現在先來寫其他兩種
    volley
    由於HttpURLConnection和HttpClient用法過於複雜, 如果沒有進行適當的封裝, 容易寫出重覆的程式碼 因此Google推出Volley Http request framework來處理簡單的HTTP Request, 另外他也可以下載圖片, 不過對於下載多張圖片, 比較適合使用glide來處理, volley是屬於輕量級的HTTP Request處理工具, 因此對於大量數據處理, 例如下載文件, 效能就沒有那麼理想。

使用方法
" "

Gradle

implementation 'com.android.volley:volley:1.1.1'

get方法的處理

GET 這邊StringRequest使用了三個參數 URL, 匿名Response處理以及匿名Error處理, 最後把這個request丟進queue即可

    val url = "https://cloud.culture.tw/frontsite/trans/SearchShowAction.do?method=doFindTypeJ&category=6"
    Log.v("url",url)
    val jsonArray = JsonArrayRequest(url,
            object: Response.Listener<JSONArray>{
                override fun onResponse(response: JSONArray?) {
                    tv_gson.text = response.toString()
                }
            },
            object:Response.ErrorListener{
                override fun onErrorResponse(error: VolleyError?) {

                }

            })
    Volley.newRequestQueue(this).add(jsonArray)

post方法

如果你想要實作POST Request那麼必須自己覆寫getParams這個method

最後就可以拿到回傳的資料


上一篇
Kotlin 2018連續開發30天 day 10 深入剖析view的工作流程
下一篇
Kotlin 2018連續開發30天 如何做到開機自動啟用APP
系列文
Kotlin 2018連續開發30天30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言