Android
-
[Android] ZonedDateTime, LocalDateTime, Instant의 차이Android 2025. 10. 29. 09:23
workmanager를 사용해서 안 읽은 알림이 있을 시 오전 9시에 정기적으로 알림을 주고자 했다 val now = LocalDateTime.now()val targetTime = LocalDateTime.of( LocalDate.now().plusDays(1), LocalTime.of(9, 0))val delay = Duration.between(now, targetTime).toMillis()notifyWorkRequest = PeriodicWorkRequestBuilder( 1, TimeUnit.DAYS).setInitialDelay(delay, TimeUnit.MILLISECONDS) .build() 그런데 자꾸만 오..
-
[Android] Activity, Fragment, FragmentView LifeCycleAndroid 2024. 12. 25. 18:00
라이프사이클이 좀 헷갈려서 다시 정리해봄 Activity는 뭘까?앱이 수행하는 작업(task)의 기반이 되는 요소이고, 앱과 사용자의 상호작용을 위한 진입점 역할 및 ui를 구성하는 역할을 하는 컴포넌트이다 점점 단말기 성능은 좋아지고 있지만 메모리는 pc에 비해서 제한되어있다따라서 제한된 메모리를 효율적으로 관리해야한다. 따라서 앱이 실행되는 동안 앱을 구성하는 컴포넌트들의 생명주기와 상태변화를 관리해야한다 예를 들면 사용자들이 앱을 실행시켰다가 다른 앱을 켤 수도 있고, 종료시켰다가 다시 돌아오기도 하거나앱을 세로에서 가로 모드로 바꾸는 등 여러가지 일들이 발생할 수 있다.이러한 상태변경이 생겼을 때 이 상태들이 가지고 있는 정보들을 유지하고 복원할 수 있어야한다 이러한 작업을 생명주기에 맞추어 작성..
-
[회고] 새싹(SeSac) 한 달 회고etc 2024. 11. 7. 08:19
새싹 취업청년사관학교에서 강의를 들은지도 한 달이 벌써 지났다한 달 동안 어떻게 변했는지 기록을 남겨보고자 한다 1. 새로운 언어에 대한 적응나는 이전에 프론트엔드 부트캠프를 수강했고 자바스크립트(+타입스크립트)가 내 주언어였다부트캠프 중에 일주일 배운 리액트 네이티브가 재밌어서 웹으로 진행한 프로젝트를 앱으로 준비하다가 아예 모바일쪽으로 진로를 바꾸기로 했다그후 새싹에서 코틀린을 배우면서 자바스크립트와는 다른 방법으로 객체지향적으로 코드를 짜는 것을 배웠다 처음에는 클래스 만드는 것도 어렵고 이해가 잘 안 갔다자바스크립트에도 클래스가 있고 어떻게 쓰는지는 알았지만 거의 사용해본 적이 없어서 그런가 ㅎ그래도 계속 과제를 해보면서 클래스간의 관계들이라든지 아키텍처들을 적용해보면서어떻게 흘러가는지 조금씩 ..
-
[React-Native] 폰트 적용하기React-Native 2024. 4. 26. 18:00
폰트를 적용하기 위해 여러가지 방법을 찾아보았다1. react-native-asset 라이브러리를 사용하는 방법2. ios, android에 각각 수동으로 적용하는 방법 라이브러리로 하면 쉽지만 수동으로는 어떻게 하는지 궁금해서 2번을 선택해서 진행했다 IOS- 아래 이미지와 같이 React-Native로 만든 프로젝트 안에 ios - Fonts 디렉토리에 사용하고자 하는 폰트 파일들을 넣어준다 - xcode를 열고 폰트를 적용해주면 되는데,자신의 프로젝트 - ios - 자신의프로젝트.xcodeproj을 xcode로 실행시킨다 - 프로젝트 파일을 누르고 add Files to '프로젝트이름' 을 선택 후 자신의 프로젝트 - ios.- Fonts 폴더를 선택한다(안의 폰트 파일들 말고 Fonts폴..
-
[React-Native] 셋팅(Mac, android)React-Native 2024. 4. 24. 20:39
저번 글에서는 IOS만 쓰고 안드로이드 셋팅하는 걸 깜빡하고 안 써서 따로 작성해본다 1. Node, Watchman 설치 brew install nodebrew install watchman 이미 IOS를 셋팅할 때 설치했기 때문에 패스 2. JDK(Java Development Kit) 설치 brew tap homebrew/cask-versionsbrew install --cask zulu17brew info --cask zulu17 터미널에 공홈에서 알려주는 대로 Homebrew를 통해 오픈JDK를 설치하면 된다Zulu OpenJDK를 사용하면 인텔 기반 JDK를 사용할 때보다 M1 Mac에서 빌드 속도가 빨라진다고 한다(오호)너무 최신버전으로 설치해도 에러가 발생할 수..