Programming/Android

Android Studio์—์„œ Project ๋ณต์‚ฌํ•˜๊ธฐ

devvace 2016. 8. 12. 16:07

[2020-11-19 ์”€]

 

๐Ÿ˜Ž ๊ฐœ์š”

Android studio๊ฐ€ ์—…๋ฐ์ดํŠธ ๋  ๋•Œ๋งˆ๋‹ค ๋ฉ”๋‰ด๋„ ์กฐ๊ธˆ์”ฉ ๋ฐ”๋€Œ๊ธฐ ๋•Œ๋ฌธ์—, ์ด ๊ธ€ ๋˜ํ•œ ํ•œ ๋ฒˆ์”ฉ ์—…๋ฐ์ดํŠธ ํ•˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค.

์‚ฌ์‹ค ํ”„๋กœ์ ํŠธ ๋ณต์‚ฌ๊ฐ€ ๋ˆ„๊ตฌ์—๊ฒŒ๋Š” ํ•„์š” ์—†์„์ง€ ๋ชจ๋ฅด๊ฒ ์ง€๋งŒ,

์•ˆ๋“œ๋กœ์ด๋“œ ๊ฐœ๋ฐœ 5๋…„์ฐจ, ๊ณง ํšŸ์ˆ˜๋กœ 5๋…„์ด ๋‹ค ๋˜์–ด๊ฐ€๋Š” ์ง€๊ธˆ๋„ ๊ฐ€๋”๊ฐ€๋‹ค ํ”„๋กœ์ ํŠธ ์ด๋ฆ„์„ ๋‹ค๋ฅธ ์ด๋ฆ„์œผ๋กœ ๋ฐ”๊ฟ”์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค.

์˜ค๋Š˜๋„ ๊ทธ๋Ÿฐ ๊ฒฝ์šฐ์ธ๋ฐ, ๋ฐ”๊พธ๋Š” ๊ฒธ ์ด ๊ธ€๋„ ์—…๋ฐ์ดํŠธ ํ•œ๋‹ค.

 

ํ˜„์žฌ Android studio ๋ฒ„์ „ 4.1์ด๋‹ค.

์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋‹ค์Œ์„ ์ฐธ๊ณ 

 

 

โœ” ํ”„๋กœ์ ํŠธ ๋ณต์‚ฌํ•˜๋Š” ๋ฐฉ๋ฒ•

 

.git, .idea, .gradle์€ ์„ค์ •ํŒŒ์ผ์ด๊ธฐ ๋•Œ๋ฌธ์— ์‚ญ์ œํ•œ๋‹ค.

โ€ป ๊ตณ์ด ์ง€์šฐ์ง€ ์•Š์•„๋„ ๋ฌธ์ œ ์—†์„ ์ˆ˜๋„ ์žˆ์Œ. ํ•˜์ง€๋งŒ ์ˆจ๊น€ํŒŒ์ผ๋“ค์€ ๋ณดํ†ต ํ”„๋กœ์ ํŠธ๊ฐ€ ์ƒ์„ฑ๋˜๊ณ  ๋‚œ ํ›„์˜ ์„ค์ •ํŒŒ์ผ๋“ค์ด๋‹ˆ ์ƒˆ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•  ์ง€๊ธˆ์€ ์‚ญ์ œํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„ ๋“ฏ

 

 

Android Studio์—์„œ ๋ณต์‚ฌํ•œ ํ”„๋กœ์ ํŠธ ํด๋”๋ฅผ import ํ•œ๋‹ค.

`File>New>Import Project...`

 

 

 

์„ ํƒ ์‚ฌํ•ญ์ด๊ธด ํ•œ๋ฐ, ์ผ๋‹จ ์•ฑ์„ ๊ตฌ๋ถ„ํ•˜๊ธฐ ์œ„ํ•ด ์•ฑ ์ด๋ฆ„์„ ๋ณ€๊ฒฝํ•œ๋‹ค.

`res>values>strings.xml`

 

๋‹ค์Œ์œผ๋กœ ํŒจํ‚ค์ง€ ์ด๋ฆ„์„ ๋ณ€๊ฒฝํ•œ๋‹ค.

`ํŒจํ‚ค์ง€ ์šฐํด๋ฆญ>Refactor>Rename...`

 

๋ณต์‚ฌํ•œ ํ”„๋กœ์ ํŠธ ์ด๋ฆ„์œผ๋กœ ์ž‘์„ฑํ•˜๊ณ ,

์ฒดํฌ ๋ฐ•์Šค ์˜ต์…˜ ๋‘˜ ๋‹ค ์ฒดํฌํ•œ๋‹ค.(์˜ต์…˜์„ ์ฒดํฌํ•˜์ง€ ์•Š์œผ๋ฉด, ์ผ์ผ์ด ์ฐพ์•„์„œ ๋ณ€๊ฒฝํ•ด์ค˜์•ผ ํ•œ๋‹ค.)

 

Refactor ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ์•„๋ž˜ ์ชฝ์— Refactoring Preview๊ฐ€ ๋‚˜์˜ค๋Š”๋ฐ, ๋‚ด์šฉ ์ฒดํฌํ•ด๋ณด๊ณ  Do Refactor ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅธ๋‹ค. (์‚ฌ์‹ค ๋‚ด์šฉ ์•ˆ ๋ณด๊ณ  ํ•ด๋„ ์˜ค๋ฅ˜๋Š” ์—†์„ ๊ฒƒ์ด๋‹ค.)

 

๋งˆ์ง€๋ง‰์œผ๋กœ, settings.gradle ํŒŒ์ผ์˜ rootProject.name ๊ฐ’์„ ๋ณ€๊ฒฝํ•œ ํ›„ Sync Now๋ฅผ ํ•œ๋‹ค.

 

์ด์ œ ๋ณต์‚ฌํ•œ ํ”„๋กœ์ ํŠธ ํŒŒ์ผ์„ ์‹คํ–‰ํ•ด๋ณด๋ฉด,

์‹คํ–‰๋„ ์ž˜ ๋˜๊ณ , ๋ณต์‚ฌํ•˜๊ธฐ ์ „ ์•ฑ๊ณผ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ๋กœ ์ƒ์„ฑ๋œ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

 

โ˜ ๋‹ค๋งŒ, ์•ฑ ํฌ๊ธฐ๊ฐ€ ๋‹ค๋ฅธ๋ฐ ์ด์œ ๋Š” ์ž˜ ๋ชจ๋ฅด๊ฒ ์œผ๋‚˜ ์‚ฌ์šฉํ•˜๋‹ค๋ณด๋‹ˆ ๋น„์Šทํ•˜๊ฒŒ ๋งž์ถฐ์กŒ๋‹ค...

 

 

 

 

์ž˜ ๋ชป๋œ ๋‚ด์šฉ์ด ์žˆ๊ฑฐ๋‚˜,

ํ˜น์‹œ ๋ณธ์ธ์ด ์‚ฌ์šฉํ•˜๋Š” ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์ด ์žˆ์œผ์‹œ๋ฉด ๋Œ“๊ธ€ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ‘๐Ÿ‘๐Ÿ‘

 

20-11-23 ์ถ”๊ฐ€

Room ๊ด€๋ จ ๋กœ์ง์ด ๋“ค์–ด๊ฐ„ ํ”„๋กœ์ ํŠธ ํŒŒ์ผ์„ ๋ณต์‚ฌํ•˜๋‹ˆ, Exception์ด ๋ฐœ์ƒํ•ด์„œ ๋ณต์‚ฌํ•œ ์•ฑ์ด ์ข…๋ฃŒ๋˜๋Š” ํ˜„์ƒ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์›์ธ์— ๋Œ€ํ•ด ํ•ด๊ฒฐ ๋ฐฉ์•ˆ์ด ์ƒ๊ธฐ๋ฉด ๊ธ€ ์—…๋ฐ์ดํŠธ ํ•˜๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

 

 

๋”๋ณด๊ธฐ

[2019-08-05 ์”€]

์•„๋ž˜ ์ˆ˜์ •ํ•œ ํฌ์ŠคํŠธ(11-29์ผ์ž)๋กœ ๋”์ด์ƒ ์—…๋ฐ์ดํŠธ๋Š” ์—†๋‹ค ์ƒ๊ฐํ–ˆ๋Š”๋ฐ, ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•ด์„œ ๋‚ด๊ฐ€ ํ•œ ๋ฐฉ๋ฒ•์„ ์—…๋ฐ์ดํŠธ ํ•œ๋‹ค.ํ…Œ์ŠคํŠธํ•œ Android Studio ๋ฒ„์ „์€ 3.4.2

 

 

๊ธฐ์กด ๋ฐฉ๋ฒ•์œผ๋กœ ํ•˜๋‹ˆ ์ด์ƒํ•œ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•œ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์—ˆ๋‹ค...

๋ณต์‚ฌํ•œ ํด๋” ๋˜ํ•œ ๋นˆํด๋”์ด๋‹ค.

 

 

 

## ์ดํ•˜ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• ↓

 

 

๋ณต์‚ฌํ•œ ํ”„๋กœ์ ํŠธ ํŒŒ์ผ์„ importํ•ด์„œ ์—ฐ๋‹ค.

 

๋งŒ์•ฝ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ฐฝ์ด ๋œจ๋ฉด ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ์‹คํ–‰ํ•œ๋‹ค.

 

์•ฑ ์ด๋ฆ„๋„ ๊ฒน์น˜์ง€ ์•Š๊ฒŒ ๋ฐ”๊ฟ”์ฃผ๊ณ 

 

ํŒจํ‚ค์ง€ ์ด๋ฆ„์„ ๋ฐ”๊พผ ํ”„๋กœ์ ํŠธ ์ด๋ฆ„์œผ๋กœ ๋ณ€๊ฒฝํ•œ๋‹ค(๋ชจ๋‘ ์†Œ๋ฌธ์ž์—ฌ์•ผ ํ•จ)

 

 

 

๋ชจ๋‘ ์™„๋ฃŒ ํ›„ ๋นŒ๋“œํ•˜๊ณ  ์‹คํ–‰ํ•ด๋ณด๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.

๋ณต์‚ฌํ•˜๊ธฐ ์ „ ํ”„๋กœ์ ํŠธ์˜ ์ž”์žฌ๊ฐ€ ๋‚จ์•„์žˆ์–ด์„œ ๊ทธ๋Ÿฐ ๋“ฏ.. 

 

๋ณต์‚ฌํ•œ ํ”„๋กœ์ ํŠธ๊ฐ€ ์—ด๋ ค์žˆ๋Š” Android Studio๋ฅผ ์ข…๋ฃŒํ•œ ๋‹ค์Œ ๊ด€๋ จ ํŒŒ์ผ๋“ค์„ ์‚ญ์ œํ•ด์ค€๋‹ค.

 

๊ทธ๋ฆฌ๊ณ  ๋‹ค์‹œ ๋ณต์‚ฌํ•œ ํ”„๋กœ์ ํŠธ๋ฅผ ์—ด์–ด์„œ ์‹คํ–‰ํ•ด๋ณด๋ฉด ?
์—๋Ÿฌ ์—†์ด ์ž˜ ๋™์ž‘ํ•œ๋‹ค.
๋”๋ณด๊ธฐ

[2018-11-29 ์”€]

๊ทธ๋™์•ˆ Android Studio๊ฐ€ ๋งŽ์€ ์—…๋ฐ์ดํŠธ๊ฐ€ ๋˜์–ด์„œ ๋‹ค์‹œ ํ•œ๋ฒˆ ํ”„๋กœ์ ํŠธ ๋ณต์‚ฌ ๋ฐฉ๋ฒ•์„ ์—…๋ฐ์ดํŠธํ•œ๋‹ค. ๊ธฐ์กด ์›๋ณธ๊ธ€์€ ๋ฐ‘์— ์œ ์ง€ํ•œ๋‹ค.
์ฐธ๊ณ ๋กœ ํ…Œ์ŠคํŠธํ•œ Android Studio ๋ฒ„์ „์€ 3.2

 

 

 

 

 

์—ฌ๊ธฐ์„œ๋ถ€ํ„ฐ๋Š” ์ƒˆ ํŒจํ‚ค์ง€์—์„œ ์‹คํ–‰

 

 

 

 

 

 

 

 

 

 

์•ฑ ํ™”๋ฉด์„๋ณด๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋‘ ๊ฐ€์ง€์˜ ์•ฑ์„ ๋‹ค ์‹คํ–‰ํ•ด๋ณผ ์ˆ˜ ์žˆ๋‹ค.

 

ref) https://code.i-harness.com/ko-kr/q/1179c4b

 


 

 

๋”๋ณด๊ธฐ

[์ตœ์ดˆ ์›๋ณธ๊ธ€]

์•ˆ๋“œ๋กœ์ด๋“œ๊ฐœ๋ฐœ์„ ํ•˜๋‹ค๋ณด๋ฉด ์—ฌ๋Ÿฌ๊ฐ€์ง€ ํ…Œ์ŠคํŠธ๋“ค์„ ํ•ด๋ด์•ผํ•˜๋Š” ์ƒํ™ฉ์ด ์žˆ๋‹ค.

 

ํ”„๋กœ์ ํŠธ ํด๋”์•ˆ์— ํŒŒ์ผ๋“ค์€ ๋ชจ๋‘ ์†Œ์ค‘ํžˆ ๋‹ค๋ค„์•ผํ•  ์•„์ด๋“ค์ด๊ธฐ ๋•Œ๋ฌธ์—, library ํ•œ๋ฒˆ ์ž˜๋ชป import ์‹œ์ผฐ๋‹ค๊ฐ€ ๋ฉ˜๋ถ•์ƒํƒœ๊ฐ€ ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.

 

Error ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉฐ ์ฒ˜์Œ๋ถ€ํ„ฐ ์ฐจ๊ทผ์ฐจ๊ทผ ๋ฌธ์ œํ•ด๊ฒฐ์„ ํ•ด๋„ ๋˜๋Š”๊ฑฐ์ง€๋งŒ, ์—ฌ๊ฐ„ ๊ท€์ฐฎ์€๊ฒŒ ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ค‘์š” ํ…Œ์ŠคํŠธ๋ฅผ ํ•  ๋•Œ๋Š” ํ”„๋กœ์ ํŠธ ๋ณต์‚ฌ๋ฅผ ํ•ด์„œ ํ…Œ์ŠคํŠธ๋ฅผ ํ•ด๋ณด๋Š” ๋ฐฉ๋ฒ•๋„ ์œ ์šฉํ• ๋“ฏ ์‹ถ๋‹ค.

 

 

1. ๋ณต์‚ฌํ•  ํ”„๋กœ์ ํŠธ ํด๋”๋ฅผ ๋‹ค๋ฅธ ์ด๋ฆ„์œผ๋กœ ๋ณต์‚ฌํ•˜๊ธฐ


์›๋ณธํ”„๋กœ์ ํŠธ Ctrl + C, Ctrl + V ํ›„ ์›ํ•˜๋Š” ์ด๋ฆ„์œผ๋กœ ๋ฐ”๊ฟ”์ฃผ๋ฉด ๋œ๋‹ค.

 

 

 

 

2. ๋ณต์‚ฌํ•œ ํ”„๋กœ์ ํŠธ ํŒŒ์ผ์„ Android Studio์—์„œ Importํ•˜๊ธฐ


File → New → ImportProject ์„ ํƒํ•ด์„œ, ๋ณต์‚ฌํ•œ ํŒŒ์ผ์„ Import ์‹œํ‚จ๋‹ค.

 

 

 

3. ํ”„๋กœ์ ํŠธ ๋ชจ๋“œ๋กœ ๋ณ€๊ฒฝ ํ›„


ํ”„๋กœ์ ํŠธ ๊ตฌ์„ฑ์š”์†Œ์ค‘์— settings.gradle์„ ํด๋ฆญํ•ด์„œ ํ•˜๋ฉด ๋‹ค์Œ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์€ Textํ™˜๊ฒฝ์ด ๋ณด์ด๋Š”๋ฐ, ์ด๊ณณ์— ์ปค์„œ๋ฅผ ๋†“๊ณ  ์ŠคํŽ˜์ด์Šค๋ฐ”๋ฅผ ์ž…๋ ฅํ•˜๋ฉด Sync Now ๋ผ๋Š” ๋ฉ”์‹œ์ง€๊ฐ€ ๋ณด์ธ๋‹ค.

 

๋ฌธ์ž๋ฅผ ์ž…๋ ฅํ•˜๋“  ์ŠคํŽ˜์ด์Šค๋ฐ”๋ฅผ ์ž…๋ ฅํ•˜๋“  ์›์œ„์น˜ ์‹œํ‚ค๊ณ  ๋‚œ ํ›„์— Sync Now๋ฅผ ํด๋ฆญํ•œ๋‹ค.

 

 

 

4. strings.xml ์—์„œ app_name ์ˆ˜์ •


app → res → values → strings.xml

 

 

 

5. Project Structure์— Application Id ๋ณ€๊ฒฝ


ํ”„๋กœ์ ํŠธ ์ด๋ฆ„(๋ณดํ†ต app์ด๋ผ ๋˜์–ด์žˆ๋‹ค)์— ์šฐํด๋ฆญ์„ ํ•˜๋ฉด Open Module Settings๋ผ๋Š” ๋ฉ”๋‰ด๊ฐ€ ๋ณด์ธ๋‹ค. ์ด๋ฅผ ํด๋ฆญํ•œ๋‹ค.

 

๋ณต์‚ฌํ•œ ํ”„๋กœ์ ํŠธ ์ด๋ฆ„์œผ๋กœ ๋ฐ”๊ฟ”์ค€๋‹ค.

 

 

 

6. Package ์ด๋ฆ„ ๋ณ€๊ฒฝ


app → java → Package Path ์šฐํด๋ฆญ ํ›„

Refactor → Rename ๋ฉ”๋‰ด ์„ ํƒ

์ด ์ฐฝ์€ ์•ˆ ๋œฐ์ˆ˜๋„ ์žˆ๋Š”๋ฐ ์•„๋ฌดํŠผ Rename package ์„ ํƒ

 

 

 

์—ฌ๊ธฐ์„œ ๋ณต์‚ฌํ–ˆ๋˜ Package๋ช…์œผ๋กœ ๋ณ€๊ฒฝํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

 

๋ฐ‘์— ์ฒดํฌ๋ฐ•์Šค์— ์ฒดํฌ๋ฅผ ํ•˜๋ฉด ๋‚ด๊ฐ€ ์งœ๋†จ๋˜ ๊ธฐ์กด์˜ ์†Œ์Šค์ฝ”๋“œ๋‚˜ ์ด์ „ ํ”„๋กœ์ ํŠธ ์ด๋ฆ„์˜ ์ž”์žฌ๋“ค์ด ๋‚จ์•„์žˆ๋Š” ๊ณณ์„ ํ•œ๋ฒˆ์— ๋ณ€๊ฒฝํ•ด์ฃผ๊ฒ ๋‹ค๋Š” ์ฒดํฌ๋ฐ•์Šค๋ฒ„ํŠผ์ด๋‹ค.

 

 

Refactor๋ฅผ ์„ ํƒํ•˜๋ฉด ๋ฐ”๋กœ ๋ณ€๊ฒฝ์ด ๋œ๋‹ค. 

Android Studio ํ•˜๋‹จ Message๋ถ€๋ถ„์— ํ•œ๋ฒˆ ๋” ์„ ํƒ์„ ์š”๊ตฌํ•˜๋Š” ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•  ์ˆ˜๋„ ์žˆ๋Š”๋ฐ, ์ž์„ธํžˆ ์ฝ์–ด๋ณด๋ฉด ์ฒดํฌ๋ฐ•์Šค๋ฅผ ์ฒดํฌํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— '์ด๋Ÿฌ์ด๋Ÿฌํ•œ ๋ถ€๋ถ„์„ ๋ณ€๊ฒฝํ•˜๊ฒ ๋‹ค. ๊ฐœ๋ฐœ์ž ๋‹ˆ๊ฐ€ ๋™์˜ํ•˜๋ƒ' ๋ผ๋Š” ๋œป์œผ๋กœ ํ•ด์„ํ•  ์ˆ˜ ์žˆ์„๋“ฏ ํ•˜๋‹ค.

Do refactor(?)๋ฅผ ๋ˆ„๋ฅด๋ฉด ์—ญ์‹œ ํ”„๋กœ์ ํŠธ ๋ช…์ด ๋ฐ”๋€Œ๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

 

 

์ˆœ์„œ๋Œ€๋กœ ์ •๋ฆฌํ•˜๋‹ค๋ณด๋‹ˆ ํ”„๋กœ์ ํŠธ๋ฅผ ๋ณต์‚ฌํ•˜๋Š”๊ฒƒ์ด '๊ตณ์ด ์ด๋ž˜์•ผํ•˜๋‚˜' ์‹ถ์„ ์ •๋„๋กœ ๊ท€์ฐฎ์€ ์ž‘์—…์ธ ๊ฒƒ์„ ๋‹ค์‹œ ๋А๊ผˆ๋‹ค. 

ํ•˜์ง€๋งŒ ๋ช‡ ๋ฒˆ ํ•˜๋‹ค๋ณด๋ฉด ๋ฐ”๋กœ ๋ฌผ ํ๋ฅด๋“ฏ์ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋˜์–ด์„œ ๊ฐœ๋ฐœํ•˜๋Š”๋ฐ ์ •๋ง ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.


 

[์ถ”๊ฐ€] 17-11-02

๊ฐ„๋งŒ์— Android ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋‹ค๊ฐ€, ํ”„๋กœ์ ํŠธ ๋ณต์‚ฌํ•  ์ผ์ด ์žˆ์–ด์„œ ๋ณต์‚ฌ๋ฅผ ํ–ˆ๋Š”๋ฐ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์˜ค๋ฅ˜ ๋ฐœ์ƒ

Installation failed with message Failed to finalize session ....

 

Rebuild Project ๋ฅผ ํ•˜๋‹ˆ ํ•ด๊ฒฐ

Android Studio > Build > Rebuild Project


ref) storiesoflife