Skip to content

๐Ÿ’‰์‚ฌ์šฉ์ž์˜ ๋‚˜์ด, ๊ฑด๊ฐ• ์ƒํƒœ ๋“ฑ ์ฃผ์š” ์ •๋ณด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ๋งž์ถคํ˜• ๋ฐฑ์‹ ์„ ์ถ”์ฒœํ•ด์ฃผ๋Š” Android Application

Notifications You must be signed in to change notification settings

mogld/Android-Studio-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

9 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ’‰ ๋ฐฑ์‹  ์ถ”์ฒœ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜

  • ํšจ์œจ์ ์ธ ํ•„ํ„ฐ๋ง ๋กœ์ง์œผ๋กœ ๋ฐฑ์‹  ์ถ”์ฒœ ์‹œ์Šคํ…œ ๊ตฌํ˜„
  • ์ง๊ด€์ ์ด๊ณ  ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฌ์šด ์ธํ„ฐํŽ˜์ด์Šค ์„ค๊ณ„
  • ์ตœ์‹  ๊ฐ์—ผ๋ณ‘ ์ •๋ณด๋ฅผ ์†์‰ฝ๊ฒŒ ์ ‘๊ทผ ๊ฐ€๋Šฅ

์„œ๋น„์Šค ์†Œ๊ฐœ

๋ฐฑ์‹  ์ถ”์ฒœ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์‚ฌ์šฉ์ž์˜ ๋‚˜์ด, ๊ฑด๊ฐ• ์ƒํƒœ ๋“ฑ ์ฃผ์š” ์ •๋ณด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ๋งž์ถคํ˜• ๋ฐฑ์‹ ์„ ์ถ”์ฒœํ•ด์ฃผ๋Š” ์•ˆ๋“œ๋กœ์ด๋“œ ๊ธฐ๋ฐ˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ, ๋‹ค์–‘ํ•œ ์งˆ๋ณ‘ ์ •๋ณด์™€ ๊ฐ์—ผ๋ณ‘ ๊ด€๋ จ ์ตœ์‹  ์†Œ์‹์ง€๋ฅผ ์ œ๊ณตํ•˜์—ฌ ์‚ฌ์šฉ์ž๊ฐ€ ๊ฑด๊ฐ• ๊ด€๋ฆฌ๋ฅผ ์‰ฝ๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•์Šต๋‹ˆ๋‹ค.

์ด๋ฒˆ ํ”„๋กœ์ ํŠธ์—์„œ ๋ฐฑ์‹  ์ถ”์ฒœ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ฐœ๋ฐœํ•˜๋ฉฐ, ์˜ˆ๋ฐฉ ์ ‘์ข…์˜ ์ค‘์š”์„ฑ์„ ์‚ฌ์šฉ์ž๋“ค์—๊ฒŒ ์•Œ๋ฆฌ๊ณ  ๋งž์ถคํ˜• ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๊ณ ์ž ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ„๋‹จํ•œ ์‚ฌ์šฉ์ž ์ž…๋ ฅ๋งŒ์œผ๋กœ ์‹ ๋ขฐํ•  ์ˆ˜ ์žˆ๋Š” ์ถ”์ฒœ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๋ฉฐ, ํŠนํžˆ ๋ฉด์—ญ๋ ฅ์ด ์•ฝํ•œ ๋…ธ์ธ, ๋งŒ์„ฑ ์งˆํ™˜ ํ™˜์ž, ์˜ˆ๋ฐฉ ์ ‘์ข… ์ •๋ณด๋ฅผ ์ฐพ๋Š” ์‚ฌ์šฉ์ž๋“ค์—๊ฒŒ ์œ ์šฉํ•˜๊ฒŒ ํ™œ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์™€์ด์–ดํ”„๋ ˆ์ž„ ๋ฐ ํ™”๋ฉด ๊ตฌ์„ฑ

์™€์ด์–ดํ”„๋ ˆ์ž„

1. ๋ฉ”์ธ ํ™”๋ฉด

Main Screen

2. ์งˆ๋ณ‘ ์นด๋“œ ํ™”๋ฉด

Disease Cards Screen Selection of Disease Cards

3. ์†Œ์‹์ง€ ํ™”๋ฉด

Newsletter Screen

4. ์ถ”์ฒœ ์ •๋ณด ์ž…๋ ฅ ํ™”๋ฉด

Recommendation Input Screen

5. ๋ฐฑ์‹  ์ถ”์ฒœ ๊ฒฐ๊ณผ ํ™”๋ฉด

Vaccine Recommendation Result Screen


๋ชฉ์ฐจ

  1. ์ฃผ์š” ๊ธฐ๋Šฅ
  2. ๊ธฐ์ˆ ์  ์„ธ๋ถ€ ์‚ฌํ•ญ
  3. ํŒ€ ์—ญํ•  ๋ถ„๋‹ด

์ฃผ์š” ๊ธฐ๋Šฅ

ํ•ต์‹ฌ ๊ธฐ๋Šฅ

  1. ๋ฐฑ์‹  ์ถ”์ฒœ ์‹œ์Šคํ…œ

    • ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ๋‚˜์ด์™€ ๊ฑด๊ฐ• ์ƒํƒœ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ๋งž์ถคํ˜• ๋ฐฑ์‹ ์„ ์ถ”์ฒœํ•ฉ๋‹ˆ๋‹ค.
    • ๊ตฌ์„ฑ ์š”์†Œ:
      Disease Model:
      ์—ฐ๋ น ํ•„ํ„ฐ์™€ ๊ธˆ๊ธฐ ์งˆํ™˜ ์ •๋ณด๋ฅผ ์ด์ง„๊ฐ’(Binary)์œผ๋กœ ์ €์žฅํ•˜์—ฌ ํ•„ํ„ฐ๋ง ํšจ์œจ์„ฑ์„ ๋†’์ž„.
      RecommendationService:
      ์ž…๋ ฅ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ํ•„์š”ํ•œ ๋ฐฑ์‹ ์„ ๊ณ„์‚ฐ.
    • ๋ฐ์ดํ„ฐ๋ฅผ ๋น ๋ฅด๊ฒŒ ์ฒ˜๋ฆฌํ•˜๊ณ  ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก DiseaseRepository๋ฅผ ํ™œ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.
  2. ์งˆ๋ณ‘ ์นด๋“œ ์‹œ์Šคํ…œ

    • ๋‹ค์–‘ํ•œ ์งˆ๋ณ‘ ์ •๋ณด๋ฅผ ์นด๋“œ ํ˜•์‹์œผ๋กœ ์ œ๊ณตํ•˜๋ฉฐ, ์ขŒ์šฐ ์Šค์™€์ดํ”„๋กœ ํŽธ๋ฆฌํ•˜๊ฒŒ ํƒ์ƒ‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • SVG ํฌ๋งท ์ด๋ฏธ์ง€๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•ด GlideToVectorYou ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ™œ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.
  3. ์†Œ์‹์ง€ ๋‹ค์šด๋กœ๋“œ ๊ธฐ๋Šฅ

    • ์ตœ์‹  ๊ฐ์—ผ๋ณ‘ ๊ด€๋ จ ์†Œ์‹์ง€๋ฅผ ๋‹ค์šด๋กœ๋“œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • Android DownloadManager์™€ CoroutineScope๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋น„๋™๊ธฐ ์ž‘์—…์„ ๊ตฌํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค.
    • ๋‹ค์šด๋กœ๋“œ ์™„๋ฃŒ ์‹œ ์•Œ๋ฆผ๊ณผ ํ•จ๊ป˜ ๊ธฐ๋ณธ ํŒŒ์ผ ๋ฆฌ๋”๋กœ ์†Œ์‹์ง€๋ฅผ ์—ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  4. UI ๋„ค๋น„๊ฒŒ์ด์…˜

    • ์‚ฌ์šฉ์ž ์นœํ™”์ ์ธ ํ™”๋ฉด ์ „ํ™˜๊ณผ ๋„ค๋น„๊ฒŒ์ด์…˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
    • ๊ตฌ์„ฑ ์š”์†Œ:
      ViewPager์™€ TabLayout์„ ํ™œ์šฉํ•ด ์—ฌ๋Ÿฌ ํŽ˜์ด์ง€๋ฅผ ์†์‰ฝ๊ฒŒ ํƒ์ƒ‰ ๊ฐ€๋Šฅ.
      Intent๋ฅผ ํ†ตํ•ด ์•กํ‹ฐ๋น„ํ‹ฐ ๊ฐ„ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ์„ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ธฐ์ˆ ์  ์„ธ๋ถ€ ์‚ฌํ•ญ

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ค๊ณ„

  • Disease Model
    ๊ฐ ์งˆ๋ณ‘์˜ ์ ‘์ข… ๊ถŒ์žฅ ์—ฐ๋ น๊ณผ ๊ธˆ๊ธฐ ์งˆํ™˜ ์ •๋ณด๋ฅผ ์ด์ง„๊ฐ’์œผ๋กœ ์ €์žฅํ•ด ํ•„ํ„ฐ๋ง ๊ณผ์ •์—์„œ ๊ณ„์‚ฐ ํšจ์œจ์„ ๋†’์˜€์Šต๋‹ˆ๋‹ค.

    • ์˜ˆ์‹œ:
      • ๊ถŒ์žฅ ์—ฐ๋ น ํ•„ํ„ฐ: ageFilter
      • ๊ธˆ๊ธฐ ์งˆํ™˜ ํ•„ํ„ฐ: forbiddenHealthConditionFilter
  • Disease Database
    SQLite ๊ธฐ๋ฐ˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ, ์ดˆ๊ธฐ ์‹คํ–‰ ์‹œ ํ•„์ˆ˜ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฏธ๋ฆฌ ์‚ฝ์ž…ํ•ฉ๋‹ˆ๋‹ค.
    ๋ฐ์ดํ„ฐ๋Š” DiseaseRepository๋ฅผ ํ†ตํ•ด ๊ด€๋ฆฌํ•˜๋ฉฐ, ์งˆ๋ณ‘ ์ •๋ณด ์กฐํšŒ ๋ฐ ํ•„ํ„ฐ๋ง์— ํ™œ์šฉ๋ฉ๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ํ๋ฆ„

  1. ์ž…๋ ฅ ๋‹จ๊ณ„
    ์‚ฌ์šฉ์ž๊ฐ€ RecommendationActivity์—์„œ ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.
  2. ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๋‹จ๊ณ„
    ์ž…๋ ฅ๋œ ๋ฐ์ดํ„ฐ๋Š” Intent๋ฅผ ํ†ตํ•ด VaccineRecommendationActivity๋กœ ์ „๋‹ฌ๋ฉ๋‹ˆ๋‹ค.
  3. ๊ฒฐ๊ณผ ํ‘œ์‹œ ๋‹จ๊ณ„
    RecommendationService๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์„ํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ํ™”๋ฉด์— ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

ํŒ€ ์—ญํ•  ๋ถ„๋‹ด

์ด์ง„์†”

  • UI/UX ๋””์ž์ธ:
    Jetpack Library(ViewPager, Fragment)๋ฅผ ํ™œ์šฉํ•œ ํ™”๋ฉด ์ด๋™ ๋ฐ ๋„ค๋น„๊ฒŒ์ด์…˜ ๊ตฌํ˜„
  • ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ์„ค๊ณ„:
    ๊ฐ ํŽ˜์ด์ง€์˜ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ์„ค๊ณ„
  • ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ๊ตฌ์„ฑ:
    ๊ฐ ํ™”๋ฉด์˜ ๋ ˆ์ด์•„์›ƒ ์„ค๊ณ„ ๋ฐ ๊ตฌํ˜„
  • ๋ฐ์ดํ„ฐ ์ „๋‹ฌ ๊ตฌํ˜„:
    Activity ๊ฐ„ ๋ฐ์ดํ„ฐ ์ „๋‹ฌ์„ ์œ„ํ•œ Intent ๊ธฐ๋Šฅ ๊ตฌํ˜„
  • ๋ฐœํ‘œ ์ž๋ฃŒ ์ •๋ฆฌ

์„ฑํ˜•์ฃผ

  • ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๋ฐ ์—ฐ๋™:
    SQLite ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ค๊ณ„ ๋ฐ ์—ฐ๋™
  • ์™ธ๋ถ€ ๋ฐ์ดํ„ฐ ์—ฐ๋™:
    ์™ธ๋ถ€ ์„œ๋ฒ„์—์„œ ์ด๋ฏธ์ง€ ํŒŒ์ผ ๋‹ค์šด๋กœ๋“œ ๊ตฌํ˜„
  • ๋ฐฑ์‹  ์ถ”์ฒœ ์•Œ๊ณ ๋ฆฌ์ฆ˜:
    ์ถ”์ฒœ ์„œ๋น„์Šค ๊ฐœ๋ฐœ ๋ฐ ์ตœ์ ํ™”
  • ๋ฐœํ‘œ ์ž๋ฃŒ ์ž‘์„ฑ

About

๐Ÿ’‰์‚ฌ์šฉ์ž์˜ ๋‚˜์ด, ๊ฑด๊ฐ• ์ƒํƒœ ๋“ฑ ์ฃผ์š” ์ •๋ณด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ๋งž์ถคํ˜• ๋ฐฑ์‹ ์„ ์ถ”์ฒœํ•ด์ฃผ๋Š” Android Application

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published