๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ’ป Computer

Android Basic

*์ด ๊ธ€์€ '์•ˆ๋“œ๋กœ์ด๋“œwith Kotlin ์•ฑ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฐ€์ด๋“œ(์•ˆ๊ท€์ • ์ €)' ์ฑ…์„ ๋ฐ”ํƒ•์œผ๋กœ ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

 

์ฝ”๋“œ : program์ด ์–ด๋–ป๊ฒŒ ๋™์ž‘ํ•˜๋Š” ์ง€ ๊ธฐ์ˆ ํ•ด๋†“์€ files

๋ฆฌ์†Œ์Šค : program ์‹คํ–‰๊ณผ ๊ด€๋ จ๋œ ์ •์  data

์„ค์ • ๋ฐ ํ™˜๊ฒฝ์ •๋ณด : project๊ฐ€ ๊ฐ€์ ธ์•ผ ํ•˜๋Š” ํ™˜๊ฒฝ์ •๋ณด ๋ชจ์Œ (์†Œ์Šค์ฝ”๋“œ ๊ฒฝ๋กœ, ๋นŒ๋“œ ์ด๋ฃจ์–ด์ง€๋Š” ๋ฐฉ๋ฒ• etc)

 

SDK (Standard Developer Kit)

API (Application Programming Interface)

Compile (์‚ฌ๋žŒ๊ณผ ๊ธฐ๊ณ„ ์‚ฌ์ด์˜ ์–ธ์–ด๋ฅผ ์ดํ•ดํ•˜๊ณ  ๋œป์„ ์ „๋‹ฌ)

 

*์ปดํŒŒ์ผ์„ ํ•ด๋„ ์ฝ”๋“œ๋Š” ๋ฐ”๋กœ ์‹คํ–‰๋˜์ง€ ์•Š๋Š”๋‹ค.

WHY? ์ฝ”๋“œ ๊ฐ„ ์กด์žฌํ•  ์ˆ˜ ์žˆ๋Š” ์˜์กด์„ฑ ๋•Œ๋ฌธ

ex) A์ฝ”๋“œ์˜ 'write'๊ธฐ๋Šฅ์ด B์ฝ”๋“œ์— ์žˆ์„ ์ˆ˜ ์žˆ์Œ.

=> ๊ฐ ์ฝ”๋“œ์˜ ์‹œ์ž‘ ์œ„์น˜๋ฅผ ์—ฐ๊ฒฐํ•  ๋ฐฉ๋ฒ•์ด ํ•„์š”ํ•˜๋‹ค.

 

Linking (๋ถ„๋ฆฌ๋œ ๊ธฐ๋Šฅ ์ทจํ•ฉ) -----> Load (์‹ค์ œ ๋ฉ”๋ชจ๋ฆฌ์— ์—…๋กœ๋“œ)


Entry Point : ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ฝ”๋“œ๊ฐ€ ์ตœ์ดˆ๋กœ ์‹œ์ž‘๋˜๋Š” ๋ถ€๋ถ„ (๋Œ€๋ถ€๋ถ„์˜ ์–ธ์–ด๊ฐ€ main์ด๋ผ๋Š” ๋‹จ์ผ ์ง„์ž…์ ์„ ๊ฐ€์ง)

 

BUT! ์•ˆ๋“œ๋กœ์ด๋“œ๋Š” ์˜ˆ์™ธ์ ์œผ๋กœ ๋‹จ์ผ์ง„์ž…์  X

Instead! ์‚ฌ์šฉ๊ฐ€๋Šฅํ•œ 4๊ฐ€์ง€ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๊ฐ€์ง

 

<Android 4๋Œ€ ์ง„์ž…์ >

 

Activity

ํ™”๋ฉด์— ํฌ์ปค์‹ฑ๋˜์–ด

์‚ฌ์šฉ์ž์™€ ์ƒํ˜ธ์ž‘์šฉํ•˜๋Š” ์ปดํฌ๋„ŒํŠธ

Service

๋ฐฑ๊ทธ๋ผ์šด๋“œ์—์„œ ์‹คํ–‰๋˜๋Š” ๊ตฌ์„ฑ์š”์†Œ

(์˜ค๋žซ๋™์•ˆ ์‹คํ–‰๋˜๋Š” ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ฑฐ๋‚˜

์›๊ฒฉ ํ”„๋กœ์„ธ์Šค๋ฅผ ์œ„ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰

*์‚ฌ์šฉ์ž UI์—†์Œ)

BroadCastReceiver

์‹œ์Šคํ…œ ๋ณ€๊ฒฝ์‚ฌํ•ญ ์•Œ๋ฆผ๋ฐ›๊ธฐ

(ex) ๋“ฑ๋ก์‹œ, ์‹œ์Šคํ…œ์—์„œ ์ „์†กํ•˜๋Š”

์™€์ดํŒŒ์ด ๋Š์ž„ ์•Œ๋ฆผ ๋“ฑ์„ ๋ฐ›์„ ์ˆ˜ ์žˆ์Œ)

ContentProvider

Data๊ฐ€ ํ•„์š”ํ•œ ์•ฑ, ๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ณตํ•  ์•ฑ์˜

ContentProvider๋ฅผ ํ†ตํ•ด์„œ๋งŒ ๋ฐ์ดํ„ฐ get ๊ฐ€๋Šฅ

 

ํ”„๋กœ๊ทธ๋žจ ์ง„์ž…์ ์„ ์‹œ์Šคํ…œ์ด ์•Œ๊ธฐ ์œ„ํ•ด์„ , AndroidManifest.xmlํŒŒ์ผ์— ์ ์–ด๋‘์–ด์•ผ ํ•จ.

*AndroidManifest์—๋Š” ์‹œ์Šคํ…œ์ด ์•Œ์•„์•ผํ•  ํ•„์ˆ˜์š”์†Œ๊ฐ€ ์ ํ˜€์žˆ์Œ.

 

Launcher : ์•ˆ๋“œ๋กœ์ด๋“œ ํ™ˆํ™”๋ฉด์„ ๋‹ด๋‹นํ•˜๋Š” ํŠน์ˆ˜ํ•œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜

 

@๊ทธ๋ฆผ์œผ๋กœ ํ•œ ๋ˆˆ์— ๋ณด๊ธฐ

์•„์ดํŒจ๋“œ๋กœ ๊ทธ๋ฆฐ ๊ทธ๋ฆผ

 

 

๋ฐ˜์‘ํ˜•