[Android TIL] 240226
๋ฐ˜์‘ํ˜•

 

 

~ Today I Learned ~

 

โœ”๏ธ Android ๊ฐœ๋ฐœ ์ข…ํ•ฉ๋ฐ˜ 1์ฃผ์ฐจ - BMI Calculator ์ œ์ž‘
โœ”๏ธ ๋ฐ์ผ๋ฆฌ Algorithm ๋ฌธ์ œ ํ’€์ด (1๋ฒˆ ~ 8๋ฒˆ) 

 

<๊ฒฐ๊ณผ๋ฌผ ๋ฏธ๋ฆฌ๋ณด๊ธฐ>

 

 

 

 

 


 

1. Android ๊ฐœ๋ฐœ ์ข…ํ•ฉ๋ฐ˜ 1์ฃผ์ฐจ - BMI Calculator ์ œ์ž‘

 

 

Android Studio 

- Android Studio๋Š” Android ์•ฑ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ๊ณต์‹ ํ†ตํ•ฉ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ(IDE)์ด๋ฉฐ, IntelliJ IDEA๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•จ
- IntelliJ์˜ ๊ฐ•๋ ฅํ•œ ์ฝ”๋“œ ํŽธ์ง‘๊ธฐ์™€ ๊ฐœ๋ฐœ์ž ๋„๊ตฌ ์™ธ์—๋„, Android Studio๋Š” Android ์•ฑ์„ ๋นŒ๋“œํ•  ๋•Œ ์ƒ์‚ฐ์„ฑ์„ ๋†’์ž„

 

๐Ÿ’ช Android Studio ๊ฐ•์ 

1. ์œ ์—ฐํ•œ Gradle ๊ธฐ๋ฐ˜ ๋นŒ๋“œ ์‹œ์Šคํ…œ
2. ๋น ๋ฅด๊ณ  ๊ธฐ๋Šฅ์ด ํ’๋ถ€ํ•œ ์—๋ฎฌ๋ ˆ์ดํ„ฐ
3. ๋ชจ๋“  Android ๊ธฐ๊ธฐ๋ฅผ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ๋Š” ํ†ตํ•ฉ ํ™˜๊ฒฝ
4. ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ์ ์šฉํ•˜์—ฌ ์•ฑ์„ ๋‹ค์‹œ ์‹œ์ž‘ํ•˜์ง€ ์•Š๊ณ  ์‹คํ–‰ ์ค‘์ธ ์•ฑ์— ์ฝ”๋“œ ๋ฐ ๋ฆฌ์†Œ์Šค ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ํ‘ธ์‹œํ•  ์ˆ˜ ์žˆ์Œ
5. ์ผ๋ฐ˜์ ์ธ ์•ฑ ๊ธฐ๋Šฅ์„ ๋นŒ๋“œํ•˜๊ณ  ์ƒ˜ํ”Œ ์ฝ”๋“œ๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ์ฝ”๋“œ ํ…œํ”Œ๋ฆฟ๊ณผ GitHub ํ†ตํ•ฉ
6. ๊ด‘๋ฒ”์œ„ํ•œ ํ…Œ์ŠคํŠธ ๋„๊ตฌ ๋ฐ ํ”„๋ ˆ์ž„์›Œํฌ
7. ์„ฑ๋Šฅ, ์œ ์šฉ์„ฑ, ๋ฒ„์ „ ํ˜ธํ™˜์„ฑ ๋ฐ ๊ธฐํƒ€ ๋ฌธ์ œ๋ฅผ ํŒŒ์•…ํ•˜๋Š” Lint ๋„๊ตฌ
8. C++ ๋ฐ NDK ์ง€์›
9. Google ํด๋ผ์šฐ๋“œ ๋ฉ”์‹œ์ง•๊ณผ App Engine์˜ ํ†ตํ•ฉ์„ ๋„์™€์ฃผ๋Š” Google Cloud Platform์„ ๊ธฐ๋ณธ์ ์œผ๋กœ ์ง€์›

 

BMI Calculator ์ œ์ž‘

(1) Activity์™€ xml ํŒŒ์ผ์€ ํ•œ์Œ์ด๋‹ค.
(2) Activity๋Š” ํ™”๋ฉด์„ ์ž‘๋™ํ•˜๊ฒŒ ํ•ด์ฃผ๊ณ , xml์€ ํ™”๋ฉด์˜ ui๋ฅผ ๊ตฌ์„ฑํ•œ๋‹ค.
(3) xmlํŒŒ์ผ์„ ์ˆ˜์ •ํ•  ๋•Œ design ํˆด์„ ์ด์šฉํ•˜์—ฌ ์†์‰ฝ๊ฒŒ ๋ฐฐ์น˜ ๊ฐ€๋Šฅํ•˜๊ณ , ๊ฐ ์ปดํฌ๋„ŒํŠธ์˜ ๋…ธ๋“œ๋ฅผ ์—ฐ๊ฒฐํ•ด ์ •๋ ฌํ•˜๊ธฐ๋„ ํŽธ๋ฆฌํ•˜๋‹ค.
(4) ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋งŒ๋“ค ๋•Œ ์•ž์œผ๋กœ ํ™œ์šฉํ•  ์ปดํฌ๋„ŒํŠธ๋ผ๋ฉด id๋ช…์„ ์ œ๋Œ€๋กœ ์„ ์–ธํ•˜๋Š” ๊ฒŒ ์ค‘์š”ํ–ˆ๋Š”๋ฐ, xml์„ ์ž”๋œฉ ์ˆ˜์ •ํ•˜๋‹ค๊ฐ€ ๋’ค๋Šฆ๊ฒŒ ๊ทธ ๋ถ€๋ถ„์„ ๋†“์นœ ๊ฑธ ์•Œ๊ฒŒ๋˜๋ฉด ์ˆ˜์ •ํ•˜๊ธฐ ๊ต‰์žฅํžˆ ๋ฒˆ๊ฑฐ๋กœ์šธ ๊ฒƒ ๊ฐ™์•˜๋‹ค.
(5) activity์™€ activity๋ฅผ ์—ฐ๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” intent๊ฐ€ ํ•„์š”ํ–ˆ๊ณ , intent๋กœ ๋ณ€์ˆ˜๋ฅผ ๋„˜๊ฒจ์ค˜์„œ ๋‹ค๋ฅธ activity์—์„œ๋„ ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ–ˆ๋‹ค. 

 

 

2. ๋ฐ์ผ๋ฆฌ Algorithm ๋ฌธ์ œ ํ’€์ด (1๋ฒˆ ~ 8๋ฒˆ)

 

 

 

[Kotlin] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋ฐ์ผ๋ฆฌ ์•Œ๊ณ ๋ฆฌ์ฆ˜ 1~10

1. ๋‘ ์ˆ˜์˜ ์ฐจ 2. ๋‘ ์ˆ˜์˜ ๊ณฑ 3. ๋ชซ ๊ตฌํ•˜๊ธฐ 4. ๋‚˜์ด ์ถœ๋ ฅ 5. ์ˆซ์ž ๋น„๊ตํ•˜๊ธฐ 6. ๋‘ ์ˆ˜์˜ ํ•ฉ 7. ๋‘ ์ˆ˜์˜ ๋‚˜๋ˆ—์…ˆ 8. ๊ฐ๋„๊ธฐ 9. ์ง์ˆ˜์˜ ํ•ฉ 10. ๋ฐฐ์—ด์˜ ํ‰๊ท ๊ฐ’ 1. ๋‘ ์ˆ˜์˜ ์ฐจ ๋งํฌ class Solution { fun solution(num1: Int, n

limheejin.tistory.com

 

 

 


~ Trouble Shooting ~

 

 

 

1. Kotlin ๋ฌธ๋ฒ• - ๋ณ€์ˆ˜ ์„ ์–ธ ํ˜•์‹์˜ ๋ฌธ์ œ

ํŒŒ์ด์ฌ๊ณผ ๋‹ฌ๋ฆฌ ์ฝ”ํ‹€๋ฆฐ์€ ๋ฐ˜๋“œ์‹œ ๋ณ€์ˆ˜๋กœ ์„ ์–ธ๋œ ํ˜•์‹์„ ์ง€์ผœ์ฃผ์–ด์•ผ ํ•œ๋‹ค.
ํ˜„์žฌ resImage์™€ resColor๋Š” " "๋กœ ์ดˆ๊ธฐํ™”๋˜์–ด ์žˆ์œผ๋ฏ€๋กœ, ์ž๋™์œผ๋กœ String ํ˜•์‹์ด ํ• ๋‹น๋˜์—ˆ๋‹ค.
์•„๋ž˜ if๋ฌธ์—์„œ resImage์— int๊ฐ’์„ ๋„ฃ์—ˆ์œผ๋ฏ€๋กœ ์ ์ ˆํ•˜์ง€ ์•Š์•„ ์˜ค๋ฅ˜๊ฐ€ ์ƒ๊ธด๋‹ค. 
๋”ฐ๋ผ์„œ ์œ„์˜ ๋ณ€์ˆ˜ ์ดˆ๊ธฐํ™”๋ฅผ var resImage = 0 ๊ณผ ๊ฐ™์ด ๋ฐ”๊พธ๋ฉด ์˜ค๋ฅ˜๊ฐ€ ์‚ฌ๋ผ์ง„๋‹ค.

 

2. Resource ํŒŒ์ผ ์ œ๋ชฉ์˜ ๋ฌธ์ œ

๋ฆฌ์†Œ์Šค ํŒŒ์ผ์˜ ์ด๋ฆ„์€ ๋Œ€๋ฌธ์ž ์‚ฌ์šฉ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๊ณ , a-z, 0-9๋‚˜ underscore๋งŒ ๊ฐ€๋Šฅํ•˜๋‹ค.
ํฐํŠธ ํด๋”์— ๋„ฃ์€ ttf ํŒŒ์ผ์˜ ์ด๋ฆ„์„ ์ˆ˜์ •ํ–ˆ๋”๋‹ˆ ํ•ด๊ฒฐ๋˜์—ˆ๋‹ค.

 

 


~ ETC ~

 

์ˆ˜๊ฐ• ์ฒซ๋‚ ์ด๋‹ค. ์ฃผ์–ด์ง„ ๋Œ€๋กœ ๋”ฐ๋ผํ•˜๋ ค๋‹ˆ ๋‚ด ์ž…๋ง›์— ๋งž๋Š” UI์™€ ์ƒ‰๋ฐฐ์น˜๊ฐ€ ์•„๋‹ˆ์–ด์„œ, ํฐํŠธ๋ผ๋„ ๋ฐ”๊ฟ”๋ดค๋Š”๋ฐ ์—ญ๋ถ€์กฑ์ด๋‹ค.
์–ผ๋ฅธ ๋ ˆ์ด์•„์›ƒ์„ ๋‹ค ๋œฏ์–ด๊ณ ์น˜๊ณ  ์‹ถ๋‹ค.

๋ฐ˜์‘ํ˜•
 ๐Ÿ’ฌ C O M M E N T