* fix: 프로젝트를 진행하면서 겪은 버그 해결 방법 + 발생 이유 정리 * 현재 취준생으로 풋내기 개발자가 쓰는 글입니다. * 그러니 조언과 지적 및 훈수는 언제나 환영입니다! 댓글로 많이 달아주세요! 문제상황 매일 특정 시간에 알람이 울리도록 다음처럼 AlarmManager에 등록해두었다. alarmManager.setRepeating( AlarmManager.RTC_WAKEUP, calendar.timeInMillis, AlarmManager.INTERVAL_DAY, // 매일 특정 시간에 알람 설정 createPendingIntent(habit) ) 그런데.. 앱이 포그라운드에서 실행 중일 때는 잘 울리다가, 백그라운드에 있을 때 안 울린다. 그리고 앱이 포그라운드로 다시 돌아온 순간 알람이 울..
* TIL/개념: 최대한 공식 문서 & 책을 기반으로 배운 내용을 정리* 현재 취준생으로 풋내기 개발자가 쓰는 글입니다.* 그러니 조언과 지적 및 훈수는 언제나 환영입니다! 댓글로 많이 달아주세요! HiltWhat is Hilt?이전 의존성 주입 포스팅에서 잠깐 언급하고 지나갔는데,Koin과 Dagger와 마찬가지로 Android에서 지원하는 DI Framework 중 하나다. 다른 DI Framework가 그렇듯, 수동으로 의존성을 관리할 때보다 컨테이너를 관리하기가 수월해지고, 보일러 플레이트 코드가 줄어든다는 장점이 있다. 게다가 Hilt는 기존에 인기있던 Dagger를 기반으로 빌드되었기 때문에,Dagger가 가지고 있던 장점인 컴파일 시간 정확성 + 런타임 성능 + 확장성 + Android St..
* TIL/개념: 최대한 공식 문서 & 책을 기반으로 배운 내용을 정리 * 현재 취준생으로 풋내기 개발자가 쓰는 글입니다. * 그러니 조언과 지적 및 훈수는 언제나 환영입니다! 댓글로 많이 달아주세요! 개인 프로젝트에서 Notification을 적용하기 위해 찾아본 공식 문서 & 겪은 이슈를 정리 Android Notification Notification이란? 사용자에게 알림을 줄 때 Android에서는 Notification 기능을 사용한다. Notification은 단순 알림 기능을 넘어서서, 메시지 답변처럼 상호작용까지 가능하도록 지원한다. 그 밖에 지원하는 기능에 대해서는 여기 공식 문서를 참고할 것! (요 포스팅에서는 기본적인 지식만 다룰 생각이다.) Notification 구성 작은 아이콘 ..
* 적용기: 실제 개발에 적용하면서 배우게 된 내용 정리 * 현재 취준생으로 풋내기 개발자가 쓰는 글입니다. * 그러니 조언과 지적 및 훈수는 언제나 환영입니다! 댓글로 많이 달아주세요! 부스트캠프에서 팀 프로젝트를 하기 전 과제에서, 클린 아키텍처를 적용해 본 적이 있다. 그리고 그 후 있던 프로젝트에서 클린 아키텍처를 적용한 일은 없었는데... 어떻게 적용했는지, 실제로 적용하면서 느낀 점을 짧게 풀어볼까 한다. ※ 주의 : 규모가 작은 프로젝트에서 단순하게 적용했기 때문에, 코드를 참고하기에는 미흡할 수 있습니다. 단순 고찰의 시점으로 봐주시면.. 감사합니다... 적용한 이유는? 당시 왜 적용했는가를 돌이켜 보면 딱 두가지인데 배우는 입장이니 여러가지를 해보는 게 좋겠지 + 일단 좋으니까 유명한 거..
작년 10월즈음, 과제에서 처음 MVVM 패턴을 적용했을 때 MVVM ViewModel과 AAC ViewModel의 개념이 너무 헷갈렸던 경험이 있다. 블로그를 돌아다녀보면 AAC ViewModel을 쓰는 것만으로도 MVVM이라고 말하는 사람도 있고, AAC ViewModel != MVVM ViewModel이라고 말하는 사람도 있고...(후반이 좀 더 설득력 있긴 했다) 결국 혼자 마음대로 결론내리고(!!!) 구현한 적이 있는데 그 때 뻘짓한 경험을 적어보려고 한다. (이미 다 아는 사람이라면 엥? 할 정도의 내용일 수도 있어서 부끄럽기도 합니다ㅠㅠㅠㅠㅠ 열람 주의..) 어쩌다가 AAC ViewModel 없이 MVVM 패턴 적용했나 위키백과에서 가져온 MVVM 패턴 그림이다. 여기서 ViewModel은 ..
Android에서 Context는 정말 자주 볼 수 있는 것 같다. Toast를 띄울 때라던가, 단순 Activity끼리 이동할 때라던가, 혹은 RoomDB에서 DB 인스턴스를 만들 때 등 Context가 매개변수로 들어가게 된다. Toast.makeText(context, text, duration).show() Context은 무엇인가? ApplicationContext도 있던데, 언제 쓰는걸까? 오늘은 이 두 가지를 중점으로 정리해보려고 한다. Context Context란? Context를 단어 그대로 해석하면 맥락이며, 공식 문서에는 다음처럼 알려주고 있다. Interface to global information about an application environment.(application..
이전 글 Activity와 Fragment - 1. (1) Activity, (2) Activity의 lifecycle Android를 처음 개발하면 접하게 되는 Activity, 그리고 fragment! 기본 중 기본이며, ✨면접 필수 질문✨으로 매우 매우 중요하다!! 0. 목차 Activity Activity란? Activity의 lifecycle Fragment Fragment란? Fragment의 lif sjevie.tistory.com 오늘은 지난 번에 이어서 Fragment와 Fragment의 lifecycle에 대해 알아보자. Fragment Fragment란? Fragment에 대해서 공식 문서에는 다음처럼 이야기한다. A Fragment represents a reusable portio..
Android를 처음 개발하면 접하게 되는 Activity, 그리고 fragment! 기본 중 기본이며, ✨면접 필수 질문✨으로 매우 매우 중요하다!! Activity Activity란? Acitivty는 Android 4대 컴포넌트 중 하나로, 사용자와 상호작용을 담당하는 컴포넌트다. 사용자에게 UI를 제공하며, Acitivty 끼리 화면 전환이 이루어질 수 있다. * Android 4대 컴포넌트에 대해서 나중에 포스팅하기 Activity의 lifecycle 개발자는 Activity의 lifecycle-callback에 따라 적합한 작업을 수행해야 한다. Activity가 생성되거나 파괴, 혹은 다시 나갔다 들어오는 등 상태(States)가 변하면 콜백을 호출하게 된다. 순서대로 onCreate(), ..