안드로이드

안드로이드 코틀린으로 Volley 라이브러리 사용방법!

알통몬_ 2018. 4. 5. 14:02
반응형


공감 및 댓글은 포스팅 하는데

 아주아주 큰 힘이 됩니다!!

포스팅 내용이 찾아주신 분들께 

도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 

만들어 나가겠습니다^^

 


이번 포스팅에서는 안드로이드에서 자바가 아닌 코틀린으로 개발 시

Http 라이브러리인 Volley 라이브러리를 

사용하는 방법에 대해 알아볼텐데요.


그 중 StringRequest를 사용하는 방법에 대해 알아보겠습니다.


먼저 build.radle(Module:app) 의

dependencies {

}

블록 사이에 

implementation 'com.android.volley:volley:1.1.0'

라이브러리를 추가해주어야겠죠?


먼저 자바에서는 아래처럼 사용했습니다.

http://altongmon.tistory.com/532

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
RequestQueue queue = Volley.newRequestQueue(this);
        String url = "http://10.20.2.119:8181/commu/and";
 
        StringRequest request = new StringRequest(Request.Method.POST, url,
                //요청 성공 시
                new Response.Listener<String>() {
                    @Override
                    public void onResponse(String response) {
                        Log.d("result""[" + response + "]");
                    }
                },
                // 에러 발생 시
                new Response.ErrorListener() {
                    @Override
                    public void onErrorResponse(VolleyError error) {
                        Log.d("error""[" + error.getMessage() + "]");
                    }
                }) {
            //요청보낼 때 추가로 파라미터가 필요할 경우 
            //url?a=xxx 이런식으로 보내는 대신에 아래처럼 가능.
            @Override
            protected Map<StringString> getParams() throws AuthFailureError {
                Map<StringString> params = new HashMap<>();
                params.put("param1""isGood");
                return  params;
            }
        };
 
        queue.add(request);
cs


코틀린에서는?? 아래처럼 사용하시면 됩니다.

Volley 라이브러리

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
val request = object : StringRequest(Request.Method.POST, "url"
Response.Listener {
                        //TODO
                    }, Response.ErrorListener {
                //TODO
                    }) {
                         // request 시 key, value 보낼 때
                        override fun getParams(): Map<StringString> {
                            val params = HashMap<StringString>()
                            params["email"= email
                            return params
                        }
 
                    }
 
                    val queue = Volley.newRequestQueue(context)
                    queue.add(request)
cs


사용방법은 어렵지 않습니다.

Response.Listener 와 Response.ErrorListener 만 사용하신다면,

object : 를 빼주셔도 됩니다.

근데 Request 할 때 키와 값을 같이 보내고 그에 따른 Response를 받아야 한다면

object : 를 넣어줘야 합니다.


이상 안드로이드에서 코틀린으로 개발 시 Volley 라이브러리 사용법에 대해 알아보았습니다.

감사합니다.

반응형