개발/안드로이드

Android - Network( Volley 라이브러리/ Manifest 수정)

웅'jk 2023. 2. 3. 12:35

안드로이드에서 네트워크 통신을 위한 Volley 라이브러리를 설치합니다.

 

1. Volley 라이브러리 설치

// app.gradle 에서 추가한다.
 implementation 'com.android.volley:volley:1.2.1'

 

2. Manifest 수정

 

  2-1 . 인터넷 권한 추가

 

// manifest 부분에는 다음을 추가
<manifest ... 
android:targetSandboxVersion="1"/>

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

 

 2-2 . 안드로이드 보안규칙에 따른 network-security-config.xml 생성하기

// xml 폴더에 network_security_config 를 추가하고 다음과 같이 입력
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
// 믿을 수 있는 도메인만 추가
    <domain-config cleartextTrafficPermitted="false">
        <domain includeSubdomains="true">"도메인주소"</domain>
    </domain-config>
// 전부다 허용
//  <base-config cleartextTrafficPermitted="true">

</network-security-config>

 

 2-3. 만든 xml manifest의 적용

// manifest의 application의 추가
android:usesCleartextTraffic="true"
android:networkSecurityConfig="@xml/network_security_config"

 

3. Volley 라이브러리를 통한 테스트

RequestQueue queue = Volley.newRequestQueue(MainActivity.this);

        // 받아올 json 타입에 따라 {} 이면 Jsonobject [] 이면 Jsonarray로 한다.
JsonObjectRequest request = new JsonObjectRequest(
                Request.Method.GET,
                URL + "/posts/1",
                null,
                new Response.Listener<JSONObject>() {
                    @Override
                    public void onResponse(JSONObject response) {
                        Log.i("Network_App",response.toString());
                    }
                },
                new Response.ErrorListener() {
                    @Override
                    public void onErrorResponse(VolleyError error) {

                    }
                }
        );
        // 이 코드가 있어야 네트워크를 실행한다.
        queue.add(request);

'개발 > 안드로이드' 카테고리의 다른 글

Android - Floationg Action Button  (0) 2023.02.06
Android - ActionBar  (0) 2023.02.06
Android - git 과 연동  (0) 2023.02.03
Android - TextWatcher  (0) 2023.02.03
Android - 객체 전달을 위한 Serializable  (0) 2023.02.01