본문 바로가기

전체 글

(107)
[TIL] kotlin Youtube Data API 3 - [ 3 ] 단일 Retrofit으로 여러 EndPoint호출하기 Youtube Data API에서 다른 EndPoint를 사용해서 각각의 API를 호출해보자. 이전 게시글에서 Videos EndPoint를 사용해서 Trending / Top 10 List를 받아오는 코드를 작성해 보았는데 Video EndPoint는 API 호출 비용1 인 대신 채널 정보를 가져올 수 없다. 이전에 작성한 코드에 이어서 Search EndPoint를 통해 Category 별 Video와 Channel을 Video EndPoint와 SearchEndPoint 각각의 EndPoint로 호출해보는 예제를 추가해보자. HomeFragment 의 경우 코드내 주석으로 자세한 설명 대체, 이전글에서 다룬 부분은 별도로 기록되지 않음 이전의 코드는 아래 게시글에서 작성. [TIL] kotlin Y.. 2023. 10. 5. 23:59
[TIL] Kotlin ViewPager2 [ 2 ] 순환 Scroll 배너 만들기 ( Fragment전환이 아닌 Rcv 형태) RecyclerView와 같은 ViewPager2 Scroll View 만들기 ViewPager2를 처음 배웠을 때는 Fragment 전환 시에만 사용하는 기능인 줄 알았는데 RecyclerView를 기반으로 한 것으로 RecyclerView와 같이 Adapter와 ViewHolder를 통해서 리스트뷰 형식으로의 기능도 할 수 있다는 사실을 알게 되어서 해당 기능에 대해서 알아보기로 했다. [TIL] Kotlin ViewPager2 [ 1 ] Fragment 전환 하기, 선택된 탭 아이콘 색상이 바뀌지 않는 오류 [ 1 ] View Pager2 개념 ViewPager2 는 RecyclerView에 기반하여 만들어진 것이다. ViewPager2도 ViewHolder 패턴을 사용하여 화면에 보이지 않는 Vi.. 2023. 10. 4. 13:39
[TIL] Kotlin ViewPager2 [ 1 ] Fragment 전환 하기, 선택된 탭 아이콘 색상이 바뀌지 않는 오류 [ 1 ] View Pager2 개념 ViewPager2 는 RecyclerView에 기반하여 만들어진 것이다. ViewPager2도 ViewHolder 패턴을 사용하여 화면에 보이지 않는 View를 재사용하고, 데이터만 업데이트하여 효율적인 메모리 사용과 스무스한 스크롤이 가능하게 한다. 또한 Adapter 인터페이스를 사용하여 Adapter 인터페이스에서 데이터와 View 생성을 관리하도록 한다. 이를 통해 데이터 세트의 크기, View 생성 및 Binding, ViewHolder 생성등을 처리할 수 있다. RecyclerView의 주 역할은 View를 만드는 것이다. 이를 기반으로 한 ViewPager2 역시도 스와이프가 가능한 View를 만드는 데 사용되지만 Viewpager2는 FragmentS.. 2023. 10. 3. 12:55
[TIL] kotlin Room Database 개념 -1- Room Database Room DataBase Library를 사용하는 이유 특정 Database는 서버에서 관리하지 않고 로컬에서 관리하는 것이 필요한데, 이때 Android Studio에 내장되어 있는 SQLite를 사용하여 DB를 관리하는 경우가 일반적이다. 하지만 SQLite를 독자적으로 사용할 시 성능적인 문제를 포함함과 동시에 DB의 유지보수 작업이 번거로워지는 이슈가 있다. Room DB Library를 사용함으로 이러한 문제를 해결할 수 있으며, 간결하고 직관적인 코드 작성이 가능하며 컴파일 시 SQL 쿼리 및 스키마 관련 오류를 확인할 수 있어 안정성 향상에도 도움을 준다. 새로운 버전의 앱을 배포하거나 스키마를 변경할 때 Migration을 지원해 이전 버전과의 호환성 유지 .. 2023. 10. 1. 23:54
[TIL] kotlin Youtube Data API 3 - [ 2 ] videos:List 받아와 Trending 10 Thumbnails 만들기 Youtube Data API 3 videos:List 받아와 Trending 10 Thumbnails 만들기 [ 2 ] API Key 생성 및 retrofit은 이전에 작성했던 youtube Data API 3 기본설정 [ 1 ] 참고 [TIL] Youtube Data API 3 기본 설정 [ 1 ] -1- Youtube Data API 3 videos:List 받아와 Hot 10 Thumbnails 만들기 [ 1 ] 0. NewProject 만들어 두고 build.gradle 의존성 추가 및 Manifest 권한 부여 build.gradle android { buildFeatures { viewBinding = true buildConfig = true } } dependen junes-daily.t.. 2023. 9. 30. 23:53
[TIL] kotlin Retrofit 개념, 응답 처리 메서드 ( Response<T>, Call<T> ) 전에 작성했던 글 안에 Retrofit과 OkHttp에 대해서 간단하게 작성했었는데 더 자세하게 정리하기 위해 분리. Retrofit ? Retrofit은 Type - safe한 REST 통신 라이브러리이다. RESTful API를 호출하고 JSON 또는 XML 과 같은 응답 데이터를 쉽게 파싱할 수 있도록 도와준다. 이때 REST란 Representational State Transfer의 약자로 웹 서비스를 구축하기 위한 아키텍처 스타일이며, REST는 네트워크 상에서 클라이언트와 서버 간의 통신을 위한 규칙(HTTP 메서드)과 제약 조건(상태 관리 등)을 정의한다. Json - Java Script Object Notiationn은 key - value의 쌍으로 이루어져 있는 객체를 만들 때 생성하.. 2023. 9. 27. 17:38
[TIL] kotlin Youtube Data API 3 - [ 1 ] 기본 설정 -1- Youtube Data API 3 videos:List 받아와 Hot 10 Thumbnails 만들기 [ 1 ] 0. NewProject 만들어 두고 build.gradle 의존성 추가 및 Manifest 권한 부여 build.gradle android { buildFeatures { viewBinding = true buildConfig = true } } dependencies { // gson converter implementation("com.google.code.gson:gson:2.10.1") implementation("com.squareup.retrofit2:converter-gson:2.9.0") // url 이미지 로딩 coil Library implementation("io... 2023. 9. 26. 23:57
[TIL] Kotlin SQLite -1- SQLite SQLite란?? SQLite는 관계형 데이터베이스 관리 시스템(Relationnal Database Management System)으로 표준 SQL을 지원하는 DB파일 하나로 구현한 경량화된 RDBMS이며 Android Studio, IOS 등에서 DB구현을 위한 기본 라이브러리로 사용되어지고 있다. 추가적인 특징은 다음과 같다. 별도의 서버가 존재하지 않는다 SQLite는 클라이언트 - 서버 아키텍처를 사용하지 않으므로 별도의 데이터베이스 서버가 필요하지 않다. ACID 지원 Atomicity( 원자성 ), Consistency( 일관성 ), Isolation( 고립,격리성 ), Durability( 지속성 )와 같은 ACID 특성을 제공하여 데이터 무결성을 보장한다. 표준 SQ.. 2023. 9. 23. 20:58