와챠의 우당탕탕 코딩 일기장
[안드로이드]MariaDB <=> Apache <=> Android (PHP + Json)(2) 본문
[안드로이드]MariaDB <=> Apache <=> Android (PHP + Json)(2)
minWachya 2021. 4. 30. 10:28이전 글에서는 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 : 버튼 누르면 서버에서 정보 받아와 화면에 보여주는 동작 처리
<xml 코드>
activity_main.xml
hinfo.xml
<kt 코드>
hinfo.kt
JsonObj.kt
hinfoAdapter.kt
MainActivity.kt
'코딩 일기장 > Android(Kotlin)' 카테고리의 다른 글
[안드로이드]Python(Django) <=> MySQL <=> Json(1) (0) | 2021.05.01 |
---|---|
[안드로이드] 홍드로이드 #5 ListView 연습 (0) | 2021.05.01 |
[안드로이드]MariaDB <=> Apache <=> Android (PHP + Json)(1) (0) | 2021.04.29 |
[안드로이드] 10장 연습문제 5번(여러 액티비티 전환2) (0) | 2021.04.11 |
[안드로이드] 직접 풀어보기 10-1(여러 액티비티 전환) (0) | 2021.04.11 |