BunGae 앱은 다양한 활동을 다양한 사람들과 급 번개 모임을 가질 수 있도록 지원하는 앱입니다.
- 100% 코틀린으로 작성되었습니다.
- ViewModel을 이용해 화면 회전에 대응했습니다.
- DataBinding으로 UI와 데이터를 선언적 형식으로 결합하였습니다.
- LiveData를 이용해 Observer 패턴을 적용했습니다.
- MVVM 패턴으로 작성되었습니다.
- Hilt를 이용해 의존성 주입을 하였습니다.
- Coroutine을 이용해 비동기처리를 하였습니다.
- Firebase를 이용해 계정 생성, 데이터 및 이미지 저장, 채팅 기능을 구현하였습니다.
- RecyclerView에 ListAdapter를 적용하여 구현하였습니다.
- GoogleMap을 활용해 앱 내부에 지도를 올리고 현재위치, 주소 검색, 다른 사람이 등록한 마커를 볼 수 있습니다.
- Bottom Navigation을 이용해 Fragment 전환을 쉽게 할 수 있습니다.
- Glide 라이브러리를 사용해 이미지 처리를 하고 있습니다.
- 이메일 형식으로 회원가입을 진행합니다.
- 이메일 중복 확인과 비밀번호 일치 여부를 확인하고 값을 넘깁니다.
- 카메라와 내부 저장소의 접근 권한을 확인합니다.
- 닉네임 중복 체크를 하면 Firebase와 통신하여 닉네임 중복 여부를 확인 후 결과를 반환합니다.
- 생성한 계정으로 로그인을 합니다.
- 먼저 위치 접근 권한을 확인합니다.
- 글 내용을 입력하고 모임 장소를 구글 맵으로 검색하면 해당 위치로 마커가 이동됩니다.
- '여기에서 봐요!' 버튼을 누르면 해당 주소가 화면에 등록됩니다.
- 게시글 수정을 진행합니다.
- 수정을 완료하면 게시글 수정 액티비티는 종료되고 수정한 내용이 반영되어있는 액티비티를 볼 수 있습니다.
사용자: 굳건이 사용자: 너굴
- 메시지를 받으면 대화방이 생기는 걸 볼 수 있습니다.
사용자: 굳건이 사용자: 너굴
- 대화를 주고 받을 때 메세지를 보내면 바로 대화방에 반영되는 걸 볼 수 있습니다.
- 맵 프래그먼트를 실행하면 현재 내 위치가 바로 표시됩니다.
- 이전에 올린 게시글의 마커도 표시되어있는 걸 볼 수 있습니다.
- 마이 페이지에 내 프로필 사진을 누르면 사진을 변경할 수 있습니다.
- 닉네임을 변경하면 닉네임 변경하기 버튼은 사라지고 내가 원하는 닉네임을 입력 후 중복 검사에 통과하면 닉네임이 변경됩니다.
- 내가 쓴 글 보기를 누르면 내가 올린 글만 필터링 되어 보여집니다.