안드로이드

안드로이드 Volley http 라이브러리 사용 예제!

알통몬_ 2018. 1. 5. 15:30
반응형


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

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

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

도움이 되길 바라며

더 깔끔하고 좋은 포스팅을 

만들어 나가겠습니다^^

 


오랜만에 안드로이드 카테고리에 글을 씁니다.

이번 포스팅에서는 android에서 제공하는 volley http라이브러리 사용법에 대해

공부합니다.


먼저 android에서 말하는 volley 라이브러리의 장점입니다.

1
2
3
4
5
6
7
8
9
10
Volley offers the following benefits:
 
-Automatic scheduling of network requests.
-Multiple concurrent network connections.
-Transparent disk and memory response caching with standard HTTP cache coherence.
-Support for request prioritization.
-Cancellation request API. You can cancel a single request, or you can set blocks or scopes of requests to cancel.
-Ease of customization, for example, for retry and backoff.
-Strong ordering that makes it easy to correctly populate your UI with data fetched asynchronously from the network.
-Debugging and tracing tools.
cs

해석은 각자의 몫 ㅎㅎ

0. manifest.xml에 인터넷퍼미션 추가

<uses-permission android:name="android.permission.INTERNET"/>

1. gradle에 라이브러리 추가

compile 'com.android.volley:volley:1.1.0'


2. MainActivity에 생성 및 사용.

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
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
package altong.mon.commspring;
 
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
 
import com.android.volley.AuthFailureError;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
 
import java.util.HashMap;
import java.util.Map;
 
public class MainActivity extends AppCompatActivity {
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        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


이 예제를 가지고 다음 포스팅에서는 안드로이드와 스프링 간의 통신 예제에 대해

알아보겠습니다.

이상입니다.

감사합니다.


반응형