디프만 10기 4조 신동빈센조 나나공 Android Repository
- 구글 플레이스토어: https://play.google.com/store/apps/details?id=com.depromeet.sloth
- 현재 서버가 중단되었습니다.
- Disquiet: https://disquiet.io/product/나나공
- Behance: https://www.behance.net/gallery/133424149/_?locale=ko_KR
- Figma: Android Design
- 개발 기간 : 2021.09.11 ~ing
- Team Android Developer : 이지훈 최철훈
- Trouble Shooting
-
구글 / 카카오 로그인
-
강의 등록
- 수강할 강의의 필수 정보들을 입력하여 강의를 등록합니다.(나공이와 대결을 시작합니다!)
-
강의 조회(오늘까지 들어야하는 강의, 전체 강의)
- 오늘까지 몇개의 강의를 들어야 하는지 확인하고, 강의가 몇일 남았는지, 현재 진행률를 확인합니다.
-
강의 수강 체크
- 강의를 수강한 만큼 + 버튼을 눌러 체크합니다.
-
강의 수강 종료(완강)
- 모든 강의를 수강한 경우 강의 완강하기 버튼을 눌러 완강합니다.
-
강의 상세 확인
- 강의의 상세 정보를 확인합니다. 현재 진행률과 더불어 낭비하고 있는 돈이 얼마인지 확인할 수 있습니다.
-
강의 수정
- 등록한 강의의 정보를 수정합니다.
-
강의 삭제
- 등록한 강의를 삭제합니다. (도전을 포기합니다.)
-
프로필 수정
- 사용자의 닉네임을 수정합니다.
-
푸시 알림 수신
- 푸시 알림을 통해 등록한 강의에 대한 정보들을 수신합니다.
-
알림 목록 확인
-
수강한 강의 통계 확인
- 현재까지 등록한 전체 강의와 완강한 강의를 기반한 통계를 제공합니다
-
온보딩 튜토리얼
- 앱을 사용하기 전에 튜토리얼을 통해 앱의 사용방법을 익힐 수 있습니다.
- Tools : Android Studio
- Language : Kotlin
- Architecture Pattern : Google Recommend Architecture
- Android Architecture Components(AAC)
- ViewModel
- DataBinding
- Naivgation Conponent
- Hilt
- DataStore
- Coroutines
- Livedata -> Flow
- Retrofit2
- Okhttp3
- Gson -> Kotlinx-serialization
- KAKAO_SDK
- Glide
- Firebase
- Analytics
- Cloud Messaging
- Crashlytics
- Lottie
- Timber
- ProgressView
- StartUp
.
├── app
│ ├── di
│ ├── initialize
│ └── application
├── buildSrc
├── data
│ ├── mapper
│ ├── model
│ ├── network
│ ├── paging
│ ├── preferences
│ ├── repository
│ └── util
├── domain
│ ├── entity
│ ├── repository
│ ├── usecase
│ └── util
├── gradle
│ └── libs.versions.toml
└── presentation
├── adapter
├── di
├── extenstions
├── mapper
├── extenstions
├── service
├── ui
└── util
- 멀티 모듈화
- 네트워크 상태 처리 개선 (앱 안정화)
- 회원 탈퇴 기능 구현
- 알림 목록 화면 내에 온보딩 다시 해보기 기능 구현
- 프로필 사진 변경 기능 구현
- 프로필 사진 크롭 기능 지원 (진행중)
- Manage 화면 내에 달력 구현 (진행중)
- JWT 토큰 암호화 처리
- navigation graph 분리
- 아키텍처 구조 개선
- 로그인
- 온보딩 화면 (투데이)
- 온보딩 화면 (강의목록)
- 홈화면 (투데이, 강의목록, 마이페이지(강의 통계), 알림목록)
- 강의 등록
- 강의 상세화면, 수정화면, 삭제화면
- 설정 화면, 프로필 수정,문의, 개인정보 처리 방침
- 인터넷 연결이 끊겼을 경우