일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 지산동카페
- androidstudio
- 범물동카페
- 수성구맛집
- 대구인스타핫플
- 어플개발
- 애드센스
- 동성로맛집
- 안드로이드앱
- 파이썬
- 안드로이드개발
- 앱개발
- Android
- 코딩
- 대구맛집
- 개발자
- 수성구카페
- 안드로이드앱개발
- 의무경찰
- 애드몹
- 대구카페
- 대구핫플
- 동성로카페
- 인스타핫플
- 동성로핫플
- 코딩공부
- 안드로이드
- 안드로이드스튜디오
- 감성카페
- 범물동
- Today
- Total
목록분류 전체보기 (141)
Glacier's Daily Log
코틀린에서 vararg로 가변 인자를 지원. vararg를 사용하면 함수를 호출할 때 인자 개수를 유동적으로 관리할 수 있음. // vararg의 사용 예 fun sum(vararg num: Int) = num.sum() fun main(args: Array) { val nums1 = sum(1 val nums2 = sum(1, 2, 3) } 그렇다면 이미 존재하는 배열을 가변인자로 넘길 수는 없나? spread operator * 사용하기 val tester = arrayOf(1, 3, 5) sum(*tester) 와 같은 방법으로 배열을 spread하여 가변인자로 넣을 수 있음. (c의 포인터 개념과는 다름!)

안드로이드에서 UI 요구사항을 작성하는 방법은 크게 3가지가 있다. 동적으로 프로그래머틱하게 View를 생성 XML 파일을 활용해 UI 작성 Jetpack Compose를 활용하여 작성 아직까지 대부분의 구현은 XML 파일을 활용해 UI를 작성하는 방식을 채택하고 있는데, 수많은 ViewGroup중 LinearLayout이나 RelativeLayout을 활용한 구현이 많이 보인다. 현재 안드로이드 권장사항은 ConstraintLayout 사용인데, ConstraintLayout을 활용하면 어떤 장점이 있는지 알아보자. 우리가 XML로 작성한 코드는 실제로 View기반의 구현체로 바뀌어 화면에 그려지게 된다. 그 View 또한 특수한 생명주기를 따른다 (참고 : https://www.charlezz.com..
Kotlin 1.3에 속하는 캡슐화 블록 예외처리시 사용. val targetJob: Result ... if(targetJob.isSuccess){ it: String -> //성공시 호출됨 } if(targetJob.isFailure){ it: Throwable -> // 실패(오류)시 호출됨 } Result 타입에서 가독성 좋게 값 가져오기 targetJob.getOrThrow() → runCatching문 내에서 성공시엔 성공값, 에러가 발생한 경우 해당 에러 리턴 targetJob.getOrDefault(defaultValue = "Unknown") → runCatching문 내에서 성공시엔 성공값, 에러가 발생한 경우 defaultValue 파라미터를 리턴 targetJob.getOrNull(..

Flow? Coroutine 비동기 작업에서 Suspend 함수를 사용하여 작업이 모두 완료된 후에 값을 리턴받을 수 있다. 하지만 중간에 진행되는 작업 중에 갱신되는 값들도 계속 받을 수 있다면 업데이트를 조금 더 다이나믹하게 진행할 수 있지 않을까? Flow를 사용해서 연속적인 값을 방출하게 구현할 수 있다. LiveData vs Flow 기존에 사용하던 LiveData와 Flow의 차이점? LiveData- 생명주기를 가진 데이터 홀더 - 메인스레드에서 동작. 별도 쓰레드에서 동작해야 하는 상황 (Data Layer에서의 구현 등) 에서는 사용하기 어려움 - 안드로이드 의존성이 밀접하게 결합되어 있어 테스트가 힘들다.- 마찬가지로 안드로이드 의존성이 있기 때문에 코드 분리시에 조심해서 사용해야함 F..

안드로이드 개발을 해본 사람이라면, getApplicationContext() 함수를 정말 많이 마주했을 것이다. 안드로이드 개발에서 Context는 정말 많은 부분을 차지한다. 우선 Context란? 사전적 의미는 맥락을 뜻한다. 안드로이드 공식문서에는 아래와 같이 설명되어있다. Interface to global information about an application environment. This is an abstract class whose implementation is provided by the Android system. It allows access to application-specific resources and classes, as well as up-calls for appl..

안드로이드 개발을 시작한지 3년이 다 되어간다. 쌩독학으로 시작해서, 유튜브 구글링 등으로 원하는 앱을 만들어보며 직접 부딪혔다. 그렇게 한두개씩 개인 앱 프로젝트를 만들다 보니, 어느새 내 플레이스토어 개발자 계정에는 40개 이상의 앱이 올라가 있었고 많은 외주작업을 맡을 수 있는 프리랜서 개발자로도 활동하고 있다. Google Play의 Glacier Han 개발자 Android 앱 안녕하세요, 1인 안드로이드 어플 개발자 Glacier Han 입니다. 약 40개의 안드로이드 앱을 개발 하였으며, 다양한 플랫폼에서 운영중입니다. 앱개발 멘토링 / 앱 외주개발 등도 진행중에 있습니다. play.google.com 처음에는 JAVA로 앱 개발을 배웠다. 약 2년동안 자바로 안드로이드를 하다가, 아무래도 ..