-
Working Day는 걷기 운동에 즐거움을 더해주는 안드로이드 어플리케이션이다.
- 미션을 통해 얻은 포인트를 원하는 쿠폰으로 교환할 수 있다.
- 게시글을 통해 사람들과 소통하거나 함께 걸을 사람을 모집할 수 있다.
- 랭킹을 통한 승부욕으로 다른 사람들과 선의의 경쟁을 할 수 있다.
-
이동 수단이 발달함에 따라 평소에 걷는 시간이 줄어들게 되었는데, '걷기'라는 좋은 운동을 습관화했으면 좋겠다는 바램으로 본 프로젝트를 진행한다.
- 총 3명
| 이건희 (팀장) | 김건진 | 이주학 |
|---|---|---|
| 컴퓨터공학과 | 컴퓨터공학과 | 컴퓨터공학과 |
| 걸음 수 측정 지도에 랜덤 좌표 표시 UI 구현 |
Firebase 연동 회원가입 및 로그인 프로필 수정 |
게시글 댓글 포인트 적립 |
- 설계 : 2022. 10. 04 ~ 2022. 10. 11
- 개발 : 2022. 10. 11 ~ 2022. 12. 19
-
Firebase Store
- 회원, 게시글, 만보기 등 전반적인 데이터들을 저장한다.
-
Firebase Storage
- 프로필 사진, 쿠폰 사진 등 파일들을 저장한다.
-
데이터 저장 예시
-
회원 정보
- 신규 사용자는 이메일, 별명, 비밀번호 입력을 통해 가입할 수 있다.
- 유효한 이메일과 비밀번호 입력을 통해 로그인할 수 있다.
- 프로필 관리 화면에서는 별명과 비밀번호를 변경할 수 있다.
-
만보기
- SensorManager API를 통해 X축, y축, z축의 기울기를 이용해 가속도를 계산한다.
- 가속도가 설정된 값보다 높으면 만보기를 카운트한다.
- 일정 걸음마다 레벨이 상승한다.
- 초기화 버튼을 클릭하면 만보기 카운트를 0부터 재시작할 수 있으며, 레벨은 그대로 유지된다.
-
리더보드
- 사용자 정보를 레벨 순서로 정렬한다.
- '총 사용자 수 – index + 1'을 계산해 역순으로 랭킹을 표시한다.
-
게시판 기능
- 게시글을 작성하여 다른 사람들과 소통할 수 있다.
- 각 게시글에 댓글을 쓰고 삭제할 수 있다.
-
포인트 적립
- GoogleMaps API를 통해 사용자의 위치를 가져온다.
- 사용자의 위치 주변 300m 범위 거리 이내에 랜덤 좌표가 생성된다.
- 화면 하단의 실시간 거리 정보는 1.5초마다, 1m마다 갱신된다.
- 랜덤으로 생성된 좌표에 도착하면, 랜덤 포인트를 지급받는다.
- 이전에 생성된 좌표에 도착하지 않았다면, 일정 시간동안 새로운 좌표를 생성할 수 없다.
-
포인트 교환
- 각 상품마다 구매 버튼을 누르면 다이얼로그 창이 뜨고, 구매 및 취소를 검토한다.
- 구매를 눌렀을 때 포인트가 충분하다면 포인트가 차감되고 화면 새로고침된다.
- 구매를 눌렀을 때 포인트가 부족하다면 “포인트 부족” 메시지 출력된다.
- 아쉬운 점
-
GoogleMaps API 정확성 문제- 구글맵이 다른 맵 api에 비해 정확성이 떨어지고 업데이트가 안되어서 오래된 데이터들이 표시되고 있는데, 네이버맵 / 카카오맵 등 다른 api와 비교해보지 않은게 아쉽다.
-
고정형 레이아웃- 현재 디바이스 화면 크기에 따라 ui가 반응형으로 변하지 않고, 테스트에 사용된 디바이스에 고정적으로 맞춰져있어서 아쉬운 것 같다.
-
Git 미사용- 프로젝트 도중 Git을 통해 커밋 관리를 하지 않아 개발 이력을 찾아볼 수 없어 아쉽다.
-





