본문 바로가기

TOOL/Android Studio

Android Studio - 네트워크 통신을 위한 Volley 라이브러리

반응형
Volley

 

 

 

 

셋팅을 위해 각 파일에 코드를 추가 및 설치해준다.

 

 

 

build.gradle

 

(추가 & 설치)

dependencies {
	implementation 'com.android.volley:volley:1.2.1'
}

 

 

 

network_security_config.xml

(추가)

 

<?xml version="1.0" encoding="utf-8" ?>

<network-security-config>
    <domain-config cleartextTrafficPermitted="false">
        <domain includeSubdomains="true">*.naver.com</domain>
    </domain-config>
</network-security-config>

 

 

 

AndroidManifest.xml

(추가)

<manifest
	android:targetSandboxVersion="1">
    
	<uses-permission android:name="android.permission.INTERNET" />
    
    <application
    	android:networkSecurityConfig="@xml/network_security_config"
        android:usesCleartextTraffic="true">

 

 

실행 할 MainActivity.jav

 

// 3. API를 호출한다.
RequestQueue queue = Volley.newRequestQueue(MainActivity.this);

StringRequest request = new StringRequest(
        Request.Method.POST,
        URL,
        new Response.Listener<String>() {
            @Override
            public void onResponse(String response) {
                // 제대로 처리했을때 결과
                // 4. 결과를 텍스트뷰에 보여준다.
                try {
                    JSONObject result = new JSONObject(response);
                    String translatedText = result.getJSONObject("message").getJSONObject("result").getString("translatedText");
                    txtResult.setText(translatedText);

                    // 히스토리 저장
                    Papago papago = new Papago(text, translatedText);

                    papagoList.add(0,papago);


                } catch (JSONException e) {
                    e.printStackTrace();
                }


            }
        },
        new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {
                // 에러 발생시 처리
            }
        }

 

반응형