: 코로나에 따른 정보제공, 단계별 지역별 시설 이용수칙
- 단계별 주요시설 이용 시 이용수칙 제공
- 단계별 일반시설 이용 시 이용수칙 제공
- 공유하기 기능으로 유의사항 공유 제공
- 전국의 거리두기 단계 세부확인 기능 제공
- 전국의 확진자 현황 세부확인 기능 제공
- 선택한 지역의 확진자 현황과 거리두기 단계 위젯 제공
- 전국의 확진자 현황 위젯 제공
코로나 사회적 거리두기 단계별 유의사항과 확진자 현황을 앱&위젯으로 제공합니다.
- AreaAdapter : 각종 시설들을 RecyclerView로 뿌려주는 Adapter
- InformationAdapter : 위젯 지역 선택시 나타나는 지역을 RecyclerView로 뿌려주는 Adapter
- OptionAdapter : 환경설정 List를 RecyclerView로 뿌려주는 Adapter
- BaseActivity : Activity 상속을 위해 필요한 BaseActivity
- BaseFragment : Fragment 상속을 위해 필요한 BaseFragment
- BaseDialog : Dialog 상속을 위해 필요한 BaseDialog
- BaseAdapter : Adapter 상속을 위해 필요한 BaseAdapter
- BaseHolder : Holder 상속을 위해 필요한 BaseHolder
- BindingConversions : Binding Adapter를 사용해 Glide함수 구현
- OptionDialog : 환경설정 List 클릭시 나타나는 Dialog
- InformationFragment : MainFragment의 View 클릭시 해당하는 시설의 사진과 해당하는 단계의 이용수칙을 보여주고 1~3단계까지 ViewPager로 이동가능하다. 공유하기로 친구들과 공유 가능
- MainFragment : 각종 시설의 사진과 이름을 RecyclerView로 뿌려주고 현재 자신의 위치를 기반으로 몇 단계의 사회적 거리두기 지침을 준수해야하는지 가르쳐준다.
- MapFragment : 지역별 사회적 거리두기 단계 확인 기능과 지역변 확진자 현황을 확인할 수 있다.
- OptionFragment : 앱 버전, 오픈소스 라이선스, 위치정보 서비스 약관, 앱 설명 및 사용방법등을 확인 할 수 있다.
- GpsTracker : 사용자의 위치를 받아 지오코더로 현재 주소로 변환해준다
- Region : 서울, 서울특별시와 같이 지역 이름을 여러 형식으로 표현할 수 있는데, 하나의 형식으로 표현하기 위한 enum classd이다.
- AreaItem : 각종 시설의 정보를 가지는 Data Class이다.
- OptionItem : 환경설정의 정보를 가지는 Data Class이다.
- AreaFactory : 파이어베이스의 데이터를 가져오는 싱글턴 AreaFactory
- CoronaData : 보건복지부에서 Data를 받아오는 object이다. Jsoup를 이용하여 보건복지부에서 Data를 받아오고 Coroutine을 통해 앱 시작시 백그라운드로 Data를 받아오고 Data를 사용할 때 비동기처리된 함수를 사용하여 쉽게 사용할 수 있다.
- view : Jsoup을 사용해 확진자 현황과 전국 거리두기 단계를 파싱하는 View Package
- MapView : WebView를 상속받은 View로 보건복지부에서 CoronaMap만 받아와서 보여준다. 거리두기 단계표시와 감염자 현황을 보여주는 2개의 함수를 제공한다.
- CountryInformationWidget : 대한민국 코로나 현황을 알려주는 위젯
- RegionInformationWidget : 지역별 코로나 현황을 알려주는 위젯
- SplashActivity : Splash화면으로 사용자에게 위치정보 사용 권한을 요청한다.
- MainActivity : Navigation Drawer를 구현하였고 NavController를 사용해 Activity에 Fragment를 붙였다.
- WidgetActivity : RegionInformationWidget을 생성시 설정하는 Activity. 지역을 선택할 수 있다.
- CubePageTransformer
- App : Kotlin & Android Studio
- DB : Firebase
- Operating System : Window10 64bit
- CPU : I5-8265U
- RAM : 8GB
- 팀명 : Carry
- 팀원 : 유양우, 강태종