[안드로이드]MariaDB <=> Apache <=> Android (PHP + Json)(2)
이전 글에서는 DB를 만들고 웹에서 DB의 내용을 받아 Json 형태의 배열로 만들어주는 부분까지 했었다.
이 글에서는 안드로이드에 이 Json 배열을 어떻게 받아서 처리하는지 알아보겠다.
만들어볼 앱은 아래와 같다.
버튼을 누르면
이렇게 뜨는 앱을 만들어 볼 것이다.
build.gradle(:app)에 추가할 것들
1, plugins에 id 'kotlin-android-extensions' 추가
변수 선언/xml파일과의 연결 작업 도와주는 플러그인이다.
추가 후 MainActivity.kt에 import kotlinx.android.synthetic.main.activity_main.* 해줘야 함!
2, dependencies에 통신 간결하게 해주는 implementation 'com.squareup.okhttp3:okhttp:3.8.1' 추가
3, dependencies에 implementation 'com.google.code.gson:gson:2.8.5' 추가
Json파일에 있는 데이터를 자바/코틑린 클래스의 Object로 쉽게 전환해준다.
Sync Now해주면 build.gradle(:app) 작업은 끝!
AndroidManifest.xml에 추가할 것들
1, Json 파일을 안드로이드로 가지고 오기 위해 웹서버 접근 허용하기위해서
<uses-permission android:name="android.permission.INTERNET" />해주기
2, http 사이트에 대한 접근 허용 위해 application에 android:usesCleartextTraffic="true" 해주기
끝!
이제 어느 파일들이 필요한지 알아본 뒤 자세한 코드들을 알아보자.
activity_main.xml : 리사이클러뷰
hinfo.xml : 리사이클러뷰에 들어갈 아이템
hinfo.kt : 리사이클러뷰에 들어갈 데이터 클래스, 인자는 Json 피일에서 불러올 데이터 형식과 같음
JsonObj.kt : hinfo에 대한 배열을 갖는 데이터 클래스
hinfoAdapter.kt : 리사이클러뷰의 어댑터 클래스(리사이클러뷰는 어댑터가 필요함)
MainActivity.kt : 버튼 누르면 서버에서 정보 받아와 화면에 보여주는 동작 처리