Skip to content

geongeongeon/WalkingDay

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚶 해피 워킹 어플리케이션 :: Working Day

WalkingDay


📋 목차



📢 소개 및 목적


  • Working Day는 걷기 운동에 즐거움을 더해주는 안드로이드 어플리케이션이다.

    • 미션을 통해 얻은 포인트를 원하는 쿠폰으로 교환할 수 있다.
    • 게시글을 통해 사람들과 소통하거나 함께 걸을 사람을 모집할 수 있다.
    • 랭킹을 통한 승부욕으로 다른 사람들과 선의의 경쟁을 할 수 있다.
  • 이동 수단이 발달함에 따라 평소에 걷는 시간이 줄어들게 되었는데, '걷기'라는 좋은 운동을 습관화했으면 좋겠다는 바램으로 본 프로젝트를 진행한다.


👨‍💻 팀원


  • 총 3명
이건희 (팀장) 김건진 이주학
컴퓨터공학과 컴퓨터공학과 컴퓨터공학과
걸음 수 측정
지도에 랜덤 좌표 표시
UI 구현
Firebase 연동
회원가입 및 로그인
프로필 수정
게시글
댓글
포인트 적립

📅 개발 일정


  • 설계 : 2022. 10. 04 ~ 2022. 10. 11
  • 개발 : 2022. 10. 11 ~ 2022. 12. 19

🖥️ 개발 환경


JAVA Firebase Android Studio


💾 데이터베이스


  • Firebase Store

    • 회원, 게시글, 만보기 등 전반적인 데이터들을 저장한다.
  • Firebase Storage

    • 프로필 사진, 쿠폰 사진 등 파일들을 저장한다.
  • 데이터 저장 예시

    ex1 ex2

🎨 UI


화면 캡처 2024-08-20 171721 화면 캡처 2024-08-20 171803 화면 캡처 2024-08-20 171834 화면 캡처 2024-08-20 171847


✨ 기능 상세


  • 회원 정보

    • 신규 사용자는 이메일, 별명, 비밀번호 입력을 통해 가입할 수 있다.
    • 유효한 이메일과 비밀번호 입력을 통해 로그인할 수 있다.
    • 프로필 관리 화면에서는 별명과 비밀번호를 변경할 수 있다.
  • 만보기

    • SensorManager API를 통해 X축, y축, z축의 기울기를 이용해 가속도를 계산한다.
    • 가속도가 설정된 값보다 높으면 만보기를 카운트한다.
    • 일정 걸음마다 레벨이 상승한다.
    • 초기화 버튼을 클릭하면 만보기 카운트를 0부터 재시작할 수 있으며, 레벨은 그대로 유지된다.
  • 리더보드

    • 사용자 정보를 레벨 순서로 정렬한다.
    • '총 사용자 수 – index + 1'을 계산해 역순으로 랭킹을 표시한다.
  • 게시판 기능

    • 게시글을 작성하여 다른 사람들과 소통할 수 있다.
    • 각 게시글에 댓글을 쓰고 삭제할 수 있다.
  • 포인트 적립

    • GoogleMaps API를 통해 사용자의 위치를 가져온다.
    • 사용자의 위치 주변 300m 범위 거리 이내에 랜덤 좌표가 생성된다.
    • 화면 하단의 실시간 거리 정보는 1.5초마다, 1m마다 갱신된다.
    • 랜덤으로 생성된 좌표에 도착하면, 랜덤 포인트를 지급받는다.
    • 이전에 생성된 좌표에 도착하지 않았다면, 일정 시간동안 새로운 좌표를 생성할 수 없다.
  • 포인트 교환

    • 각 상품마다 구매 버튼을 누르면 다이얼로그 창이 뜨고, 구매 및 취소를 검토한다.
    • 구매를 눌렀을 때 포인트가 충분하다면 포인트가 차감되고 화면 새로고침된다.
    • 구매를 눌렀을 때 포인트가 부족하다면 “포인트 부족” 메시지 출력된다.

💬 프로젝트 회고


  • 아쉬운 점
    1. GoogleMaps API 정확성 문제

      • 구글맵이 다른 맵 api에 비해 정확성이 떨어지고 업데이트가 안되어서 오래된 데이터들이 표시되고 있는데, 네이버맵 / 카카오맵 등 다른 api와 비교해보지 않은게 아쉽다.
    2. 고정형 레이아웃

      • 현재 디바이스 화면 크기에 따라 ui가 반응형으로 변하지 않고, 테스트에 사용된 디바이스에 고정적으로 맞춰져있어서 아쉬운 것 같다.
    3. Git 미사용

      • 프로젝트 도중 Git을 통해 커밋 관리를 하지 않아 개발 이력을 찾아볼 수 없어 아쉽다.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages