Android Studio 4.1 환경에서 Java를 사용하여 개발한 앱
최근 들어 공부하는 모습을 찍어 SNS에 인증하거나 Youtube에서 공부 방송을 진행하는 등 공부 습관에 대한 관심도 나날이 높아지고 있습니다.
본 시스템은 사용자가 세운 목표를 달성함으로써 얻는 성취감으로 꾸준히 공부에 흥미를 느낄 수 있도록 도움을 주고자 개발하였습니다.
개발된 시스템을 통해 사용자는 쉽고 빠르게 스터디 플랜을 세워 이를 바탕으로 모든 목표를 달성할 수 있게 될 것이라 기대됩니다.
2021.03.02 - 2021.06.30
- 할 일과 하루 목표 분량 선택
- 시작 시간 선택
- 반복되는 목표 추가
- 디데이 명과 날짜 선택
PIC1 : 목표/디데이 추가 Dialog |
PIC2 : 목표 추가 |
PIC3 : 반복 목표 추가 |
PIC4 : 디데이 추가 |
- MaterialCalendarView 라이브러리 사용
- 목표는 보라색으로, 디데이는 노란색으로 표시
- 목표와 디데이를 RecyclerView에 동적으로 표시
- 목표 선택 시 목표 달성 여부를 변경할 수 있는 Dialog 출력
- Dialog의 ‘미달성’ 버튼 선택 시 목표 Table의 목표 달성 여부 필드가 X로 수정되고, ‘달성’ 버튼 선택 시 O로 수정
- Dialog의 '미룸' 버튼 선택 시 [목표 미루기] 기능으로 이동
PIC1 : 캘린더 |
PIC2 : To-Do List |
- 목표 Table에서 기존 목표의 달성 여부를 ⭢로, 미달성 분량을 입력된 값으로 수정
- 사용자가 선택한 날짜에 목표를 새로 추가
PIC1 : 목표 미루기 |
PIC2 : 목표 미룬 후 To-Do List |
- 상단에는 오늘 날짜와 총 공부 시간 출력
- 하단에는 오늘의 목표가 RecyclerView에 동적 목록으로 출력
- 목표가 없는 경우 기본값 '공부시간 측정' 출력
- 원하는 목표 선택 시 [스톱워치] 기능으로 이동
PIC1 : 초기 홈 |
PIC2 : 공부시간 측정 후 홈 |
- Chronometer를 사용해 공부 시간 측정
- 앱이 잠자기 및 앱 대기 모드에 빠지더라도 측정이 중지되지 않도록 설정
- Foreground Service
PIC1 : 스톱워치 |
PIC2 : Foreground Service 실행 |
- 일간 통계 / 주간 통계 / 월간 통계
- 캘린더에서 선택된 날짜에 해당하는 총 공부시간, 최대 집중 시간, 목표 달성률, 목표별 달성률 출력
- MPAndroidChart로 목표별 달성률 통계 도식화
PIC1 : 일간 통계 |
PIC2 : 주간 통계 |
PIC3 : 월간 통계 |
- Google Map API 사용
- Googple Places API 사용
- fusedLocationProviderClient를 사용해 사용자의 위치 정보 획득 후 지도 위치 변경
- 사용자가 위치 장소의 500미터 내에 있는 카페, 도서관 정보를 마커로 GoogleMap에 표시
PIC1 : 현재 내 위치 |
PIC2 : 근처 카페 찾기 |
PIC3 : 근처 도서관 찾기 |
- 화면 상단에 달성률이 100%인 목표의 개수 출력 (3개월에 한 번씩 초기화)
- 받을 수 있는 보상의 배지 개수 옆에 선물 표시 출력
PIC1 : 보상 추가 |
PIC2 : 보상 |