분류 전체보기

    [JETPACK개론] WorkManager(2) + Sending, Receiver Data

    [JETPACK개론] WorkManager(2) + Sending, Receiver Data

    WorkManager에 대해서는 전 게시물에서 다뤄봤다. 다시 정리하자면, 앱이 종료되거나 다시 시작되어도 비동기 작업을 쉽게 예약할 수 있게 해준다. 안드로이드의 백그라운드 작업을 처리하는 방법 중 하나이며 지금 공부하고 있는 JetPack의 구성 요소 중 하나이다. 전 게시물에서는 WorkManager 간단한 실습을 통해 어떻게 다뤄지는지 알아봤고 이번 글에서는 Worker와 데이터를 주고받는 실습을 해볼 것이다!! 먼저 MainActiviy에서 WorkManager로 전달할 데이터를 다음과 같이 정해준다. val myData : Data = workDataOf( "a" to 10, "b" to 20 ) val workManagerB = OneTimeWorkRequestBuilder().setInpu..

    [JETPACK개론] WorkManager(1)

    [JETPACK개론] WorkManager(1)

    WorkManager는 공식문서를 확인해보면 지속적인 작업에 권장되는 솔루션이라고 나온다. 앱이 다시 시작되거나 시스템이 재부팅될 때 작업이 예약된 채로 남아 있으면 그 작업은 유지된다고 설명하고 있다. 이렇게 공식문서만 살펴보면 이해가 잘 안되는 경우가 있다. 사용자가 앱을 나가도 오래 걸리는 작업같은 경우에는 앱을 나가버리면 보통 그 작업이 멈춰버린다. 이 때 WorkManager를 사용할 수 있다. 이렇기 때문에 지속적인 작업에 권장되는 솔루션이라고 하는 것이다. 또한 WorkManager는 코루틴을 지원하고, 작업 순서 설정이 가능하다. 예를 들어 A, B작업은 첫 번째로 실행되는 두 번째로 실행되는 상관이 없지만 C라는 작업은 꼭 세 번째에 실행되어야 한다고 가정하였을 때 이 때 작업 순서를 정..

    [Kotlin/Basic] 코틀린에서의 배열과 컬렉션

    [Kotlin/Basic] 코틀린에서의 배열과 컬렉션

    1. 배열 보통 배열보다는 리스트를 사용하곤한다. 그래도 간단하게 자바와 비교하며 문법을 체크해보자. val array = arrayOf(100, 200) //0부터 마지막 index까지 for문을 돌림 for(i in array.indices){ println("$i ${array[i]}") } //쉽게 추가할 수 있음 array.plus(200) //인덱스와 밸류를 한 번에 도출함 for((idx, value) in array.withIndex()){ println("${idx}, ${value}!") } 배열도 마찬가지로 가변인지 불변인지 판별하는 val, var을 적어주어야하고, arrayOf( )라고 적는다. 이를 for문을 통해 배열안에 있는 값들을 출력할 때에는 array.indices를 통..

    [JETPACK개론] ROOM(3)

    [JETPACK개론] ROOM(3)

    ROOM드디어 마지막 포스팅!! 이제 전 글에 이어서 LiveData와 RecyclerView, 그리고 Repository이용해서 불러오는 것까지 구현해보자! 먼저 레이아웃에 리사이클러뷰, item 그리고 어댑터클래스부터 먼저 생성해주자. class CustomAdapter(private val dataSet : List) : RecyclerView.Adapter() { class ViewHolder(view : View) : RecyclerView.ViewHolder(view){ val textView : TextView = view.findViewById(R.id.textView) } override fun onCreateViewHolder(parent: ViewGroup, viewType: Int)..

    [Project] TLOVER(트러버) 회고

    [Project] TLOVER(트러버) 회고

    [진행 기간] 2022.03 ~ 2022.05 [인원] 안드로이드 개발자 : 4명 백엔드 개발자 : 6명 디자이너 : 2명 [역할] PM, 서비스 기획, 안드로이드 개발 [회고] 교내 팀 프로젝트로 너와 나의 여행 다이어리, TLOVER(트러버) 앱런칭을 했다. 이전에는 백엔드 개발을 주로 했었는데, 교내 팀 프로젝트다보니 프론트엔드 개발자가 턱없이 부족했다. 따라서 PM인 내가 안드로이드 개발을 한다고 하였고, 안드로이드 개발이 처음인지라 두려움이 있었지만, 다양한 분야에 도전해보고 싶었던 마음이 컸다. 따라서 팀원 중에 안드로이드 개발 경험이 조금 있고, 해보고 싶었던 분들을 뽑아 안드로이드 개발자 4명을 겨우 모으는데 성공했다. 안드로이드 개발자 4명이면 많이 모였다고 생각했지만, 나도 경험이 없었..