πŸ“Œμ•ˆλ“œλ‘œμ΄λ“œ μŠ€νŠœλ””μ˜€ μ‹œμž‘

일단 ν”„λ‘œμ νŠΈλ₯Ό λ§Œλ“€μ–΄ λ³Έλ‹€.
VS μŠ€νŠœλ””μ˜€λž‘ λΉ„μŠ·ν•˜κ²Œ μ§„ν–‰λ˜κ² μ§€...

책에 λ‚˜μ™€ μžˆλŠ” κ±°λž‘μ€ μˆœμ„œκ°€ μ’€ λ‹€λ₯΄λ‹€.
κ·Έλž˜λ„ μ•„λŠ” λŒ€λ‘œ 일단 따라가본닀.

초기 화면이닀.


μƒˆ ν”„λ‘œμ νŠΈλ₯Ό μƒμ„±ν•˜λ©΄ νƒ¬ν”Œλ¦Ώ 화면이 λ¨Όμ € λœ¬λ‹€. (μ±…κ³ΌλŠ” μˆœμ„œκ°€ μ’€ λ‹€λ₯΄λ‹€)
VS μŠ€νŠœλ””μ˜€μ—μ„œ ν•˜λ˜κ±°λž‘ λΉ„μŠ·ν•˜κ²Œ, 일단 Empty Activityλ₯Ό μ„ νƒν•œλ‹€.


Hello World λ₯Ό μœ„ν•œ κ±°λ‹ˆκΉŒ 이름은 막 μ •ν•œλ‹€. νŒ¨ν‚€μ§€ 이름은 λ‚΄ κ²Œμž„ λ‹‰λ„€μž„μ΄λ‹€. 별 의미 μ—†λ‹€.

μ‚¬μš© μ–Έμ–΄λŠ” 일단 책이 μžλ°”λ₯Ό μ‚¬μš©ν•˜λŠ” 것 κ°™μœΌλ‹ˆ μžλ°”λ‘œ μ‹œμž‘ν•΄λ³Έλ‹€.
SDK 버전은... ν•œ 20 μ •λ„λ‘œ ν•΄ 쀬닀. 94.1% λ‹ˆκΉŒ μ›¬λ§Œν•œκ±΄ λ˜κ² μ§€. (λ‚΄ ν•Έλ“œν°μ΄ μ•ˆλ“œλ‘œμ΄λ“œ 버전10으둜, API29λ‹€. μΆ©λΆ„νžˆ λŒμ•„κ°„λ‹€.)

섀정을 μ™„λ£Œν•˜λ©΄ Finishλ₯Ό 클릭 ν•΄ μ€€λ‹€.


였... 뭐가 λ§Žλ‹€. μƒˆλ‘œμš΄ νˆ΄μ— μ μ‘ν•˜λŠ”κ±΄ 항상 머리 μ•„ν”„λ‹€.
일단 책을 따라가야 ν•˜λŠ”λ°... μ±…κ³Ό 버전이 λ‹€λ₯Έκ±΄μ§€ μ’€ λ‹¬λΌμ„œ 적응할 μ‹œκ°„μ΄ ν•„μš”ν•˜λ‹€.
Activity μ΄λ¦„μ΄λž‘ λ ˆμ΄μ•„μ›ƒ 이름 μ„€μ •ν•˜λŠ”κ±΄ μ™œ 없지?
일단 ν”„λ‘œμ νŠΈ μ‹€ν–‰ λ²„νŠΌμ΄ μžˆμœΌλ‹ˆ μ‹€ν–‰ ν•΄ λ³Έλ‹€.

였... ν•Έλ“œν°μ΄ 생성됐닀. λ©‹μžˆλ‹€.

μ’€ κΈ°λ‹€λ €λ³΄λ‹ˆ ν•Έλ“œν°μ΄ μΌœμ§€λŠ” 화면이 뜨고, Hello World κ°€ 좜λ ₯λœλ‹€. λ‚œ 아무것도 μ•ˆν–ˆλŠ”λ°...?
μ € Hello World 문ꡬλ₯Ό λ°”κΎΈλŠ” μ½”λ“œλ„ μ–΄λ”˜κ°€μ—λŠ” μžˆμ„ 텐데, 그건 μ°¨μ°¨ μ°Ύμ•„ 보자.

μ±…μ—μ„œλŠ” 가상 머신을 μ„€μ •ν•˜κ³ , ν•„μš”ν•œ 이미지 νŒŒμΌλ„ μ„€μΉ˜ ν•΄ μ€˜μ•Ό ν•˜λŠ”λ°, 이번 μ•ˆλ“œλ‘œμ΄λ“œ 버전에선 이미 λ‹€ 미리 μ„€μΉ˜κ°€ 된 건가..

가상 머신을 μ„€μ •ν•˜λŠ” κΈ°λŠ₯λΆ€ν„° 찾아봐야겠닀.

μž‘μ•˜λ‹€ μš”λ†ˆ

Tools 의 AVD Manager 이닀.
μ±…μ—μ„œ 보던 가상 머신을 μΆ”κ°€ν•˜κ³  μ„€μ •ν•˜λŠ” 화면을 찾을 수 μžˆλ‹€.

이미 API30을 가진 λ†ˆμ΄λ‹ˆ λ”°λ‘œ κ±΄λ“œλ € 쀄 ν•„μš”λŠ” 없을 것 κ°™λ‹€. μ±…μ—μ„œ ν•˜λ‚˜ν•˜λ‚˜ μ„€μ • ν•΄ μ£Όμ–΄μ•Ό ν–ˆλ˜ 뢀뢄이, μƒˆλ‘œμš΄ λ²„μ „μ˜ μ•ˆλ“œλ‘œμ΄λ“œ μŠ€νŠœλ””μ˜€μ—μ„œλŠ” 미리 λ‹€ μ΅œμ‹  λ²„μ „μœΌλ‘œ μ„ΈνŒ…ν•΄μ„œ μ£ΌλŠ” 것이닀.
λ‹€λ₯Έ 섀정듀은 μ°¨μ°¨ μ•Œμ•„κ°€λ©΄ λ˜λ‹ˆ 일단 λ„˜μ–΄κ°„λ‹€.


잠깐 딴짓 ν•΄ λ³΄λ‹ˆ κ·Έλƒ₯ μ§„μ§œ ν•Έλ“œν°μ²˜λŸΌ 인터넷도 λ“€μ–΄κ°ˆ 수 μžˆλ‹€.

πŸ“ŒμΆœλ ₯을 ν•΄ μ£ΌλŠ” 뢀뢄은 μ–΄λ””μΌκΉŒ?


처음 화면을 켰을 λ•Œ κΆκΈˆν–ˆλ˜ λΆ€λΆ„. μ € Hello Worldλ₯Ό 좜λ ₯ν•΄μ£ΌλŠ” 뢀뢄은 어디에 μžˆλŠ”κ±΄κ°€..

책을 읽어 보자.

μ±…μ—μ„œλŠ” μ—¬κΈ°λ₯Ό μ–ΈκΈ‰ν•΄μ€€λ‹€.
layout : ν™”λ©΄μ˜ UIλ₯Ό λ‹΄λ‹Ήν•˜λŠ” λ ˆμ΄μ•„μ›ƒ λ¦¬μ†ŒμŠ€
mipmap : μ• ν”Œλ¦¬μΌ€μ΄μ…˜ μ•„μ΄μ½˜ λ“± 이미지 파일(μΉ΄μΉ΄μ˜€ν†΅ 말풍선 이미지 등을 μƒκ°ν•˜λ©΄ 될 것 κ°™λ‹€)
values : λ¬Έμžμ—΄, 컬러 λ“±
을 λ‹΄λ‹Ήν•˜λŠ” λΆ€λΆ„μ΄λž€λ‹€.

μ½”λ“œμ—μ„œλŠ” R.layout뢀뢄을 μ‚¬μš©ν•˜κ³  μžˆμœΌλ―€λ‘œ, layout 폴더λ₯Ό μ—΄λ©΄ activity_main.xml 파일이 μžˆλ‹€.

μ—΄μ–΄λ³΄μž.

였... μžˆμ–΄ 보인닀. μ’€ 더 μ•Œμ•„λ³΄μž.
μ±…μ—λŠ” μ™Όμͺ½ ν•˜λ‹¨μ˜ Design/Text 뢀뢄을 ν΄λ¦­ν•˜λΌκ³  λ˜μ–΄ μžˆλŠ”λ°, μ§€κΈˆ λ²„μ „μ—μ„œλŠ” 우츑 상단에 Code/Split/Design 뢀뢄이닀.

λ‚΄ λͺ¨λ‹ˆν„°λŠ” μΆ©λΆ„νžˆ ν¬λ‹ˆκΉŒ μ½”λ“œμ™€ λ””μžμΈ λ‘˜ λ‹€ 확인 ν•  수 μžˆλŠ” Split을 μ„ νƒν•œλ‹€.


이것저것 κ±΄λ“œλ € λ³΄λ©΄μ„œ 놀아본닀. 근데 아직 뭐가 λ­”μ§ˆ λͺ°λΌμ„œ κ±΄λ“œλ¦΄ 수 μžˆλŠ”κ²Œ λ§Žμ§€ μ•Šλ‹€.
μ±…μ—μ„œλŠ” λ’€μͺ½μ— μ˜ˆμ œλ“€μ„ ν’€λ©΄μ„œ λ ˆμ΄μ•„μ›ƒμ„ μˆ˜μ •ν•˜λŠ” 방법을 κ°€λ₯΄μ³ 쀀단닀.

πŸ“Œμ΄μ œ mipmap을 μ‚΄νŽ΄λ³΄μž

μœ„μ—μ„œ μ‚΄νŽ΄ λ³Έ 것 처럼, mipmap은 μ•± μ•„μ΄μ½˜ λ“± 이미지 νŒŒμΌμ„ μ €μž₯ν•œ μœ„μΉ˜μ΄λ‹€.

μ €μž₯된 파일이 이것저것 μžˆλ‹€.


μ§€κΈˆ ν˜„μž¬ Hello 파일의 μ•„μ΄μ½˜μ€ λ‹€μŒκ³Ό κ°™λ‹€.

... mipmap에 λŒ€ν•œ μ„€λͺ…은 이게 끝이닀. 뒀에 더 λ‚˜μ˜¨λ‹¨λ‹€. λ‚˜λŠ” 책을 λ”°λΌκ°€λŠ” κ±°λ‹ˆκΉŒ 일단 λ”°λΌμ„œ λ„˜μ–΄κ°€μž.

πŸ“Œμ΄μ œ valuesλ₯Ό μ‚΄νŽ΄λ³΄μž

valuesλŠ” λ¬Έμžμ—΄, 컬러 등에 λŒ€ν•œ 정보λ₯Ό μ €μž₯ν•œλ‹¨λ‹€. strings.xml을 μ—΄μ–΄λ³΄μž.

λ”± 봐도 μ•± 이름에 λŒ€ν•œ 정보λ₯Ό μ €μž₯ν•œ string λ³€μˆ˜ κ°™λ‹€.
이름을 λ°”κΏ”λ³΄μž.

μ‹€ν–‰μ‹œν‚€λ©΄...!

μ•±μ˜ 이름이 바뀐 것을 확인 ν•  수 μžˆλ‹€.

πŸ“Œμ•±μ˜ 정보에 λŒ€ν•œ νŒŒμΌμ€?

λ‹€μŒμ€ μ•±μ˜ 정보λ₯Ό μ €μž₯ν•˜λŠ” νŒŒμΌλ“€μ„ μ°Ύμ•„λ³΄μž. μš°μ„  manifests 디렉토리λ₯Ό μ—΄μ–΄λ³΄μž.

μ΄λŸ°μ €λŸ° 정보가 담겨 μžˆμŒμ„ 확인할 수 μžˆλ‹€. μ•„κΉŒ λ³€κ²½ν•œ 파일의 이름도 μžˆλ‹€.

android:allowBackup : μ•±μ˜ 데이터λ₯Ό λ°±μ—…/볡원 여뢀이닀. κΈ°λ³Έ 값은 true이닀.
android:icon : μ•±μ˜ μ•„μ΄μ½˜κ³Ό ꡬ성 μš”μ†Œλ“€μ— λŒ€ν•œ κΈ°λ³Έ μ•„μ΄μ½˜μ΄λ‹€.
android:label : 앱에 λŒ€ν•œ μ‚¬μš©μžκ°€ 읽을 수 μžˆλŠ” λ ˆμ΄λΈ”κ³Ό μ•±μ˜ ꡬ성 μš”μ†Œμ— λŒ€ν•œ κΈ°λ³Έ λ ˆμ΄λΈ”
android:roundicon : (μ›ν˜• μ•„μ΄μ½˜μ΄ ν•„μš”ν•œ 경우) μ›ν˜• μ•„μ΄μ½˜ μ‚¬μš©
android:supportsRtl : μ•±μ˜ 였λ₯Έμͺ½μ—μ„œ μ™Όμͺ½μœΌλ‘œ (RTL) λ ˆμ΄μ•„μ›ƒ 지원 μ—¬λΆ€λ₯Ό μ„ μ–Έν•œλ‹€. κΈ°λ³Έ 값은 false 이닀.
android:theme : κΈ°λ³Έ ν…Œλ§ˆ μŠ€νƒ€μΌμ„ μ„€μ •ν•˜λŠ” 속성이닀. Activityλ§ˆλ‹€ λ‹€λ₯΄κ²Œ μ„€μ •ν•  수 μžˆλ‹€.

μ—¬κΈ°μ„œ μ•±μ˜ ꡬ성 μš”μ†ŒλŠ” activity, activity-alias, service, receiver, providerλž€λ‹€.
μ—­μ‹œλ‚˜ λ’€μ—μ„œ μžμ„Ένžˆ 닀룬닀고 ν•œλ‹€.
.
.
λ‹€μŒμ€ Gradle Scripts이닀.
λΉŒλ“œ 정보와 ν™˜κ²½μ„€μ • 정보λ₯Ό μ €μž₯ν•œλ‹¨λ‹€.
μ—΄μ–΄μ„œ νŒŒμΌλ“€μ„ 보면 μš°λ¦¬κ°€ μ•„λŠ” 버전 2.0.1 막 μ΄λŸ°κ²ƒλ“€μ΄ 보인닀.
.
.
.
.
.
.
뭐가 λ§Žλ‹€.
일단은 μ—¬κΈ°κΉŒμ§€...

profile
아무것도 λͺ¨λ₯΄λŠ” 초보 컴곡생

0개의 λŒ“κΈ€