개요
목표
기술
- UI는 Compose를 활용
- Navigation을 활용한 Single Activity, Mutil Fragment
- Coroutine, Flow(비동기 처리)
- AlarmManager(주기적인 알림 처리)
- 화면 회전을 지원할 것이므로 디자인 패턴은 MVVM
- 운동을 저장하기 위한 DB로 Room
- Jenkinks를 통한 CI/CD
- robolectric를 활용한 테스트 코드 작성
구현할 기능
운동 화면
- 운동을 그만 두겠다는 버튼 3번 눌러야 운동 화면에서 나갈 수 있음.
타이머
쉬는 시간 타이머
- 사용자가 1세트를 끝낸 후에 확인 버튼을 누르면 쉬는 시간 타이머 동작.
- 타이머의 시간(쉬는 시간)은 사용자가 설정할 수 있다.
- 타이머가 울릴 시간이 오면 Notification(알림)이 온다.
- 화면을 끄거나 다른 앱을 사용 중이어도 알림이 온다.
- 운동 화면에서 나가면 타이머는 멈춘다(알림도 취소).
운동 시간 측정
- 운동 화면에 들어오면 운동 시작 시간을 기록한다.
- 운동 화면에 들어온 순간부터 운동 타이머가 돌아간다.
- 1시간 단위로 운동을 몇시간했는지 알림을 보낸다.
운동을 종료하면 울리는 타이머(단백질 섭취 시간 알림)
- 사용자가 설정해야만 작동한다.
데이터베이스(Room)에 저장할 것들
- 운동 종류
- 운동날, 시작 시간 ~ 끝난 시간(여러 개 가능), 그 날 들어올린 무게의 총합, 그 날 한 운동 종류와 세트와 개수
- 사용자가 정의한 루틴
기업 채용 과제로 인해 연기됨.
기업 채용 과제는 2022.11.02까지 진행 된다.
2022.10.20 ~ 2022.10.26 => 피그마로 UI 디자인 및 개요
2022.10.27 ~ ????.??.?? => Compose로 화면 구성
????.??.?? ~ ????.12.05 => Play Store로 배포
????.??.?? ~ ????.12.31 => 여유 기간(기간 연장까지 널널하게 잡아서)