Animate*asstate apis
animate*AsState animate*AsState는 Compose에서 값의 변화를 부드럽게 애니메이션으로 연결해주는 State 기반 API다. State가 바뀌면, 정해진 애니메이션 곡선/속도에 따라 중간 값을 계속 발행하면서 UI가 즉시 값이 바뀌지 않고 목표 값으로 부드럽게 변한다. 대표적으로 animateFloatAsState, ani...
animate*AsState animate*AsState는 Compose에서 값의 변화를 부드럽게 애니메이션으로 연결해주는 State 기반 API다. State가 바뀌면, 정해진 애니메이션 곡선/속도에 따라 중간 값을 계속 발행하면서 UI가 즉시 값이 바뀌지 않고 목표 값으로 부드럽게 변한다. 대표적으로 animateFloatAsState, ani...
TvInputFramework(TIF) Android TV 시스템은 크게 안드로이드 프레임워크가 제공하는 구성 요소(녹색)와 디바이스 제조업체가 구현해야 하는 하드웨어 및 소프트웨어 구성 요소(파란색)로 나뉜다. TvApp은 사용자와 직접 상호작용하며, TV InputManager를 통해 TVInput의 상태를 관리하고 TV Provider를 ...
priv-app은 system app의 일부인데 privileged app의 약자다. system app은 /system/app/에 위치하고 시스템 이미지에 포함되며 시스템 서명이면 일부 시스템 권한만 획득한다. priv-app은 /system/priv-app/에 위치하고 signature+privileged 권한을 갖고 있어서 일반 시스템 앱보다 ...
KMP에서 GoogleLogin 도전하기 firebase auth와, gcp의 기능을 사용해서 google one-tap login을 구현해보자. 일단 3rd party 라이브러리로 간단하게 구현하고, 해당 라이브러리를 쓰지않고 구현하는 것 까지 해보겠다. google login을 구현할 때, 제일 먼저 메모해둬야하는 건 oauth clientId...
Splash Screen, Launch Screen 사이드를 안드로이드로만 할까~ 하다가 KMP로 틀었다. 어차피 혼자 진행하는 프로젝트이기도 하고, 매번 똑같은 작업만 반복하기 보다는 요즘 급부상중인 Compose Multi Platform을 제대로 해보고 싶었기 때문이다. composeApp을 중심으로 ios, android 모두 jetpack...
SideEffect, LaunchedEffect, DisposableEffect 알아보기 @Composable @NonRestartableComposable @ExplicitGroupsComposable @OptIn(InternalComposeApi::class) fun SideEffect( effect: () -> Unit ) { ...
CompletableDeferred CompletableDeferred는 비동기 콜백 작업을 코루틴 스타일로 처리할 때 자주 사용되는 클래스다. Deferred(값을 나중에 반환하는 Future 역할)에서 파생되었다. 외부에서 “완료 시점”을 직접 제어하거나, 여러 콜백에서 완료/실패 신호를 합쳐야 할 때 쓴다. public interface C...
0x04 연결리스트를 공부했다. 오랜만에 하려니 어렵다. struct NODE{ struct Node *prev, *nxt; int data; }; 이게 연결리스트(DLL) 기본인데, list헤더에 있는 걸 쓰면 훨씬 쉬워진다. #include <list> int main(){ ios::sync_with_st...
취업하기 전에는 자바를 사용했지만 이왕 코테 공부 더 하는 거 앳코더같은 대회에도 나가보고 싶고, 평소에 사용해보고 싶었던 cpp를 선택했다. 백준 계정도 새로 만들었으니 제대로 해볼 것이다. 교보재는 바킹독님의 커리큘럼을 따라간다. 0x00~0x02 헤더 기본적으로 #include를 쓴다. 강의에서는 bits/std++.h를 쓰는데, 나는 그냥...
안드로이드 앱 개발자의 정체성을 잃지 않기 위해, 1인 개발로 사이드 프로젝트를 시작했다. 혼자 하더라도 후루룩 만들고 끝낼게 아니라 스토어에 배포하고 admob까지 붙일 생각이라 멀티모듈+CleanArchitecture와 같은 구조부터 잘 잡고 들어가기로 했다. 구조는 app, data, domain, presentation으로 나눴다. gra...