๐Ÿ—บ๏ธ ๋ฆฌ์•กํŠธ ๋„ค์ดํ‹ฐ๋ธŒ์™€ ์นด์นด์˜ค ์ง€๋„ API ์—ฐ๋™ํ•˜๊ธฐ : ์•ˆ๋“œ๋กœ์ด๋“œ

z00m__inยท2023๋…„ 5์›” 16์ผ
1
post-thumbnail

์‹œ์ž‘ํ•˜๋ฉฐ

์‹œ์ž‘ํ•˜๊ธฐ ์ „

์นด์นด์˜ค ์ง€๋„ API ์‚ฌ์šฉ ์‹œ ์•ˆ๋“œ๋กœ์ด๋“œ ์ŠคํŠœ๋””์˜ค AVD ์—๋ฎฌ๋ ˆ์ดํ„ฐ ์‹คํ–‰์ด ์•ˆ๋œ๋‹ค...๐Ÿ˜ญ
์ฆ‰, ๊ฐ€์ƒ๊ธฐ๊ธฐ๊ฐ€ ์•„๋‹Œ ์‹ค์ œ ์•ˆ๋“œ๋กœ์ด๋“œ ๋””๋ฐ”์ด์Šค๋ฅผ ์—ฐ๊ฒฐํ•ด์•ผ๋งŒ ํ•œ๋‹ค.
๊ทธ๋Ÿฌ๋‹ˆ ํ˜น์‹œ ์ด ํฌ์ŠคํŠธ๋ฅผ ์ฐธ๊ณ ํ•˜๋ฉฐ ์นด์นด์˜ค ์ง€๋„ API ์—ฐ๋™์„ ์‹œ๋„ํ•˜์‹ค ๋ถ„๋“ค์ด ๊ณ„์‹œ๋‹ค๋ฉด,
์‹ค์ œ ๊ธฐ๊ธฐ๋ฅผ ๋จผ์ € ์ค€๋น„ํ•ด์ฃผ์‹œ๊ธธ ์ถ”์ฒœ๋“œ๋ฆฐ๋‹ค.

ํ”„๋กœ์ ํŠธ ๊ฐœ์š”

๊ฐœ๋ฐœ ํˆด์€ VS Code์™€ Android Studio.
React Native๋ฅผ ์ด์šฉํ•ด ์•ˆ๋“œ๋กœ์ด๋“œ ์•ฑ์„ ๊ฐœ๋ฐœํ•˜๋Š” ํ”„๋กœ์ ํŠธ์ด๋‹ค.

์นด์นด์˜ค์ง€๋„ API

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

1. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋“ฑ๋ก

1) ์นด์นด์˜ค developers์—์„œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ถ”๊ฐ€

์นด์นด์˜ค ๊ฐœ๋ฐœ์ž ์‚ฌ์ดํŠธ์—์„œ ๋กœ๊ทธ์ธ์„ ํ•œ ๋’ค ์ƒ๋‹จ์˜ '๋‚ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜'์—์„œ ์นด์นด์˜ค API๋ฅผ ์—ฐ๋™ํ•  ํ”„๋กœ์ ํŠธ๋ฅผ ์ถ”๊ฐ€ํ•ด๋ณด๊ฒ ๋‹ค.


'๋‚ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜' ์„ ๋ˆ„๋ฅด๋ฉด ์œ„์™€ ๊ฐ™์€ ๋ฒ„ํŠผ์ด ๋‚˜์˜จ๋‹ค.
์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ถ”๊ฐ€ํ•˜๊ธฐ ๋ฅผ ๋ˆ„๋ฅธ ๋‹ค์Œ,

์œ„ ๋‚ด์šฉ์„ ์ฑ„์›Œ์ค€ ๋’ค ์ €์žฅ์„ ํ•˜๋ฉด ๋œ๋‹ค.
๊ทธ๋Ÿฌ๋ฉด '๋‚ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜' ์— ๋ฐฉ๊ธˆ ์ž‘์„ฑํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ถ”๊ฐ€๋œ ๊ฑธ ํ™•์ธํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ์ด๋‹ค.
๊ทธ๊ฑธ ํด๋ฆญํ•˜๋ฉด,

์ด์ฒ˜๋Ÿผ ์ž๋™์œผ๋กœ ๋ฐœ๊ธ‰๋˜๋Š” ์•ฑ ํ‚ค๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

2) ์•ˆ๋“œ๋กœ์ด๋“œ ํ”Œ๋žซํผ ๋“ฑ๋ก

์•ฑ ํ‚ค๋ฅผ ์•Œ๋ ค์ฃผ๋Š” ํ™”๋ฉด์—์„œ ์Šคํฌ๋กค์„ ์กฐ๊ธˆ ๋‚ด๋ฆฌ๋ฉด,


ํ”Œ๋žซํผ์„ ์„ค์ •ํ•˜๋ผ๋Š” ํ™”๋ฉด์ด ๋‚˜์˜จ๋‹ค.

์•ˆ๋“œ๋กœ์ด๋“œ, iOS, Web์˜ ํ”Œ๋žซํผ์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ
์šฐ๋ฆฌ๋Š” ์•ˆ๋“œ๋กœ์ด๋“œ๋ฅผ ๋“ฑ๋กํ•ด๋ณด๋„๋ก ํ•˜๊ฒ ๋‹ค.

์•ˆ๋“œ๋กœ์ด๋“œ ํ”Œ๋žซํผ์„ ๋ˆ„๋ฅด๋ฉด,

์ด๋Ÿฐ ๋‚ด์šฉ์„ ์ฑ„์šด ๋’ค ์ €์žฅ์„ ํ•˜๋ฉด ๋˜๋Š”๋ฐ...

ํŒจํ‚ค์ง€๋ช…์€ ์•ˆ๋“œ๋กœ์ด๋“œ ์ŠคํŠœ๋””์˜ค์—์„œ ๋ฐ”๋กœ ํ™•์ธํ•˜๋ฉด ๋˜์ง€๋งŒ,
ํ‚ค ํ•ด์‹œ๊ฐ€ ๋ญ”์ง€ ๋‚˜๋Š” ์ƒ์†Œํ–ˆ๊ณ  ์ข€ ์–ด๋ ค์› ๊ธฐ ๋•Œ๋ฌธ์—...
์ด ๋ถ€๋ถ„์€ ๋”ฐ๋กœ ์ ์–ด๋ณด๋„๋ก ํ•˜๊ฒ ๋‹ค.

2. ํ‚ค ํ•ด์‹œ ๋“ฑ๋ก

1) ํ‚คํ•ด์‹œ๋ž€?

์šฐ์„ , ์นด์นด์˜ค ์ž์ฒด์—์„œ ์ œ๊ณตํ•˜๋Š” ํ‚ค ํ•ด์‹œ์— ๋Œ€ํ•œ ๋ฌธ์„œ๋ฅผ ํ™•์ธํ•˜๊ธธ ์ถ”์ฒœํ•œ๋‹ค.

์„ค๋ช…ํ•˜์ž๋ฉด, ๋‚˜๋Š” ์นด์นด์˜ค API๋ฅผ ์‚ฌ์šฉํ•  ๊ฑด๋ฐ
์นด์นด์˜ค ์ž…์žฅ์—์„œ๋Š” ๋‚ด๊ฐ€ ์นด์นด์˜ค๊ฐ€ ํ—ˆ๊ฐ€๋œ ๋Œ€์ƒ์ธ์ง€ ์•„๋‹Œ์ง€ ํ™•์ธํ•˜๋Š” ๊ณผ์ •์ด ํ•„์š”ํ•  ๊ฒƒ์ด๋‹ค.
๊ทธ ๊ณผ์ •์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๊ฒƒ์ด ํ‚ค ํ•ด์‹œ ์ด๋‹ค.

์‰ฝ๊ฒŒ ๋งํ•˜๋ฉด API๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•œ ์‹ ๋ถ„์ฆ์ด๋ผ๊ณ  ์ดํ•ดํ•˜๋ฉด ๋œ๋‹ค.

2) openssl ์„ค์น˜

ํ„ฐ๋ฏธ๋„์—์„œ ํ‚ค ํ•ด์‹œ๋ฅผ ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ๊ณ  ์ฝ”๋“œ๋กœ ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ์ง€๋งŒ,
๋‚˜๋Š” ํ„ฐ๋ฏธ๋„์—์„œ ๋””๋ฒ„๊ทธ ํ‚ค ํ•ด์‹œ์™€ ๋ฆด๋ฆฌ์ฆˆ ํ‚ค ํ•ด์‹œ๋ฅผ ๊ตฌํ•  ์˜ˆ์ •์ด๋‹ค.

์ด ๊ณผ์ •์—์„œ openssl ์„ค์น˜๊ฐ€ ํ•„์ˆ˜์ด๊ธฐ ๋•Œ๋ฌธ์—, openssl-for-windows ๋งํฌ์— ์ ‘์†ํ•ด ์‚ฌ์ „์— ์„ค์น˜ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

๋งํฌ์— ์ ‘์†ํ•˜๋ฉด ์œ„์™€๊ฐ™์€ ํ™”๋ฉด์ด ๋‚˜์˜ค๋Š”๋ฐ, ์ด ์ค‘ ๋ณธ์ธ์˜ ํ™˜๊ฒฝ์— ๋งž๋Š” zip ํŒŒ์ผ์„ ์„ค์น˜ํ•˜๋ฉด ๋œ๋‹ค.

์„ค์น˜ํ•œ ๋’ค ๋ณธ์ธ์ด ์„ค์น˜ํ•œ openssl์ด ์ €์žฅ๋œ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ํ™•์ธํ•ด๋‘”๋‹ค.
๋‚˜์˜ ๊ฒฝ์šฐ ๋‹ค์Œ ๋””๋ ‰ํ† ๋ฆฌ์˜€๋‹ค.

2) ๋””๋ฒ„๊ทธ ํ‚คํ•ด์‹œ

๋‘ ๊ฐ€์ง€ ํ‚คํ•ด์‹œ ์ค‘ "๋””๋ฒ„๊ทธ" ํ‚คํ•ด์‹œ๋Š”,
ํ”„๋กœ์ ํŠธ๋ฅผ ์ฒ˜์Œ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜ ๋””๋ฒ„๊ทธํ•  ๋•Œ ์•ˆ๋“œ๋กœ์ด๋“œ ์ŠคํŠœ๋””์˜ค์—์„œ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์— ๋งž๊ฒŒ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•ด์ค€ ์ธ์ฆ์„œ์—์„œ ํ•ด์‹œํ•œ ๊ฐ’์ด๋‹ค.

์ด์ œ "C:\Users\USER.android\"์˜ ๊ฒฝ๋กœ์—์„œ debug.keystore๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•ด์ค€๋‹ค.

ํ•ด๋‹น ํŒŒ์ผ์ด ์žˆ๋Š” ๊ฒƒ์ด ํ™•์ธ ๋๋‹ค๋ฉด ๋‹ค์Œ ๋ช…๋ น์–ด๋ฅผ ์ด์šฉํ•ด ํ•ด๋‹น ๋””๋ ‰ํ† ๋ฆฌ๋กœ ์ด๋™ํ•œ๋‹ค.

cd C:\Program Files\Android\Android Studio\jre\bin

๋‹จ, ์‚ฌ์šฉ์ž์˜ ํ™˜๊ฒฝ์— ๋”ฐ๋ผ ์ ˆ๋Œ€์ ์œผ๋กœ ์ด ๊ฒฝ๋กœ๊ฐ€ ์ผ์น˜ํ•˜๋Š” ๊ฑด ์•„๋‹ˆ๋‹ค.
๋‚˜์˜ ๊ฒฝ์šฐ, Scoop์„ ์ด์šฉํ•ด Android Studio๋ฅผ ์„ค์น˜ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์—

์˜ ๊ฒฝ๋กœ๋ฅผ ์ž…๋ ฅํ•ด์•ผ ํ–ˆ๋‹ค.
๊ฐ์ž ํ™˜๊ฒฝ์— ๋”ฐ๋ผ android studio ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์ฐพ์•„๋ณด๋ฉฐ ์ˆ˜์ •ํ•˜๋ฉด ๋ ๋“ฏํ•˜๋‹ค.

์ด๋ ‡๊ฒŒ ์œ„์˜ ๋ช…๋ น์–ด๋กœ ํ•ด๋‹น ๋””๋ ‰ํ† ๋ฆฌ๋กœ ์ด๋™ํ–ˆ๋‹ค๋ฉด

keytool -exportcert 
-alias androiddebugkey 
-keystore C:\Users\User\.android\debug.keystore 
-storepass android -keypass android 
| C:\Users\USER\openssl-0.9.8k_X64\bin\openssl sha1 -binary 
| C:\Users\USER\openssl-0.9.8k_X64\bin\openssl base64

๋‹ค์Œ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜๋ฉด ๋œ๋‹ค.
๋ณธ์ธ์˜ ํ™˜๊ฒฝ์— ๋”ฐ๋ผ debug.keystore์˜ ๋””๋ ‰ํ† ๋ฆฌ, openssl์˜ ๋””๋ ‰ํ† ๋ฆฌ๋Š” ์ˆ˜์ •ํ•˜๋ฉด ๋œ๋‹ค.

๊ทธ๋Ÿฌ๋ฉด ํ‚คํ•ด์‹œ ๊ฐ’์„ ๋ฐ”๋กœ ๋„์›Œ์ค€๋‹ค!

3) ๋ฆด๋ฆฌ์ฆˆ ํ‚คํ•ด์‹œ

"๋ฆด๋ฆฌ์ฆˆ" ํ‚คํ•ด์‹œ๋Š”,
์Šคํ† ์–ด์— ์•ฑ์„ ๋ฐฐํฌํ•˜๊ธฐ ์œ„ํ•ด ์ƒ์„ฑํ•œ ๋ฆด๋ฆฌ์ฆˆ ์ธ์ฆ์„œ๋กœ๋ถ€ํ„ฐ ํ•ด์‹œํ•œ ๊ฐ’์ด๋‹ค.

ํ„ฐ๋ฏธ๋„์— ์•„๋ž˜ ์‚ฌํ•ญ์„ ์ž…๋ ฅํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

keytool -exportcert
-alias "ptect"
-keystore ptect.jks
| C:\Users\USER\openssl-0.9.8k_X64\bin\openssl sha1 -binary
| C:\Users\USER\openssl-0.9.8k_X64\bin\openssl base64

alias ์ดํ›„์—๋Š” RELEASE KEY ALIAS๋ผ๊ณ  ๋ฆด๋ฆฌ์ฆˆ ํ‚ค์˜ ๋ณ„์นญ,
keystore ์ดํ›„์—๋Š” REALEASE KEY PATH๋ผ๊ณ  ํ‚ค์Šคํ† ์–ด์˜ ๊ฒฝ๋กœ๊ฐ€ ๋“ค์–ด๊ฐ€๋ฉด ๋œ๋‹ค.

3. ์นด์นด์˜ค SDK ์„ค์น˜

1) SDK ์„ค์น˜

์ด์ œ '๋‚ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜' ์ถ”๊ฐ€๊ฐ€ ์™„๋ฃŒ๋˜์—ˆ๋‹ค๋ฉด,
API๋ฅผ ๋ณธ๊ฒฉ์ ์œผ๋กœ ์„ค์น˜ํ•ด๋ณผ ๊ฒƒ์ด๋‹ค.

์นด์นด์˜ค ๋งต API ๊ณต์‹ ๊ฐ€์ด๋“œ ํŽ˜์ด์ง€์— ์ ‘์†ํ•˜์—ฌ SDK๋ฅผ ์„ค์น˜ํ•œ๋‹ค.

์œ„ ๋งํฌ์— ์ ‘์†ํ•œ ๋’ค Download SDK๋ฅผ ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.
์„ค์น˜๋ฅผ ์™„๋ฃŒํ•œ ๋’ค zip ํŒŒ์ผ ์••์ถ•์„ ํ•ด์ œํ•œ๋‹ค๋ฉด

๋‹ค์Œ ๋‚ด์šฉ์ด ๋“ค์–ด์žˆ์Œ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

2) SDK ์•ฑ์— ๋„ฃ๊ธฐ

์‹ค์ œ ๋‚˜์˜ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์บก์ฒ˜ํ•œ ๋‚ด์šฉ์ด๋‹ค.
์œ„ ์‚ฌ์ง„์ฒ˜๋Ÿผ ํŒŒ์ผ์„ ๋„ฃ์–ด๋‘๋ฉด ๋œ๋‹ค.

์œ— ๋‹จ๊ณ„์—์„œ ์••์ถ•ํ•ด์ œํ–ˆ์„ ๋•Œ ๋ณด์ด๋Š” ํด๋”์™€ ํŒŒ์ผ์„ ํ™•์ธํ•ด๋ณด์ž.

libDaumMapAndroid.jar ํŒŒ์ผ์€ /app/libs/์˜ ๋””๋ ‰ํ† ๋ฆฌ์—,
arm64-v8a , armeabi , armeabi-v7a ํด๋”๋“ค์€ /app/source/main/jniLibs ์˜ ๋””๋ ‰ํ† ๋ฆฌ์— ๋ชจ๋‘ ๋„ฃ์–ด์ฃผ๋ฉด ๋œ๋‹ค.

4. AndroidManifest.xml ์ˆ˜์ •

1) permission ์ถ”๊ฐ€

๋‹น์—ฐํžˆ ์•Œ๊ฒ ์ง€๋งŒ... AndroidManifext.xml์€ \android\app\src\main ๋””๋ ‰ํ† ๋ฆฌ ํ•˜์— ์žˆ๋‹ค!

permission์„ ๋ถ€์—ฌํ•˜๋Š” uses-permission ํƒœ๊ทธ๋Š” manifest ํ•˜์— ๋ฐ”๋กœ ์ž‘์„ฑํ•˜๋ฉด ๋œ๋‹ค.

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

2) appkey ์ถ”๊ฐ€

๋‹ค์Œ์œผ๋กœ๋Š” appkey๋ฅผ ์ถ”๊ฐ€ํ•ด์•ผ ํ•œ๋‹ค.

์ด ๋‹จ๊ณ„๋Š” manifest ๋ฐ”๋กœ ํ•˜์œ„ ๋‹จ๊ณ„๊ฐ€ ์•„๋‹ˆ๋ผ, manifest ์•„๋ž˜์˜ application ํ•˜์— ์ž‘์„ฑํ•ด ์ฃผ๋ฉด ๋œ๋‹ค.
android:value์—๋Š” ์นด์นด์˜ค ๊ฐœ๋ฐœ์ž ์‚ฌ์ดํŠธ ์—์„œ ์ถ”๊ฐ€ํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ ํ‚ค๋ฅผ ๋„ฃ์–ด์ค€๋‹ค.

<meta-data android:name="com.kakao.sdk.AppKey" android:value="๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ ํ‚ค"/>

5. jar ํŒŒ์ผ ์ถ”๊ฐ€

1) build.gradle(:app)์— ์ฝ”๋“œ ์ˆ˜์ •

์ด์ œ ์‹คํ–‰ ์‹œ /app/libs์— ๋„ฃ์–ด๋‘” jar๊ฐ€ ์‹คํ–‰๋  ์ˆ˜ ์žˆ๋„๋ก, build.gradle ํŒŒ์ผ์„ ์ˆ˜์ •ํ•ด๋ณด์ž.

Android Studio์˜ Project Structure์—์„œ jar dependency๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ๋‹ค๊ณ  ํ•˜๋Š”๋ฐ, ์—…๋ฐ์ดํŠธ๋œ ๊ฒƒ์ธ์ง€ jar depencency๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ํ™”๋ฉด์ด ๋ณด์ด์ง€ ์•Š์•„ ์ง์ ‘ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•ด์ฃผ๊ธฐ๋กœ ํ•˜์˜€๋‹ค.

build.gradle์ด ์—ฌ๋Ÿฌ ๊ฐœ ์žˆ์„ ์ˆ˜ ์žˆ๋Š”๋ฐ, ๊ทธ ์ค‘ app์˜ ํ•˜์œ„ ๋‹จ๊ณ„์— ์žˆ๋Š” ํŒŒ์ผ์„ ์„ ํƒํ•˜๊ณ 
dependency ํ•˜์œ„์— ๋‹ค์Œ ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค.

implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation files('libs/libDaumMapAndroid.jar')

6. ์ง€๋„๋ฅผ ๋ถˆ๋Ÿฌ์™€๋ณด์ž

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

๋‹ค์Œ ๋‘ ์ฝ”๋“œ๋Š” Mapview๋ฅผ ๋„์šฐ๋Š” ๊ณผ์ •์œผ๋กœ, ์ง€๋„ ํ™”๋ฉด์ด ๋ณด์—ฌ์ง€๋„๋ก ํ•˜๋Š” ์ฝ”๋“œ๋‹ค.

1) layout : activity_main.xml

<!-- xml layout -->
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
android:background="@color/white"
xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical" android:layout_width="match_parent"
    android:layout_height="match_parent">

    <RelativeLayout
        android:id="@+id/map_view"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
</RelativeLayout>

2) java : MainActivity.java

import net.daum.mf.map.api.MapView;
public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        MapView mapView = new MapView(this);
        ViewGroup mapViewContainer = findViewById(R.id.map_view);
        mapViewContainer.addView(mapView);
    }
}

7. ์™„๋ฃŒ!

๋‚ด ๋””๋ฐ”์ด์Šค์—์„œ ๋ณด์—ฌ์ง€๋Š” ํ™”๋ฉด์ด๋‹ค.
์—ฌ๊ธฐ์— ๋งˆ์ปค๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๋“ฑ ๊ฐœ์ธ ์ปค์Šคํ…€์„ ํ•ด์ฃผ๋ฉด ๋˜๊ฒ ๋‹ค.

profile
์šฐ๋‹นํƒ•ํƒ• ๊ธฐ๋ก์ง€

0๊ฐœ์˜ ๋Œ“๊ธ€