์นด์นด์คํก๊ฐ์, ๋๋ ํ์ด์ค๋ถ ๋ฉ์์ง ๊ฐ์ ์ฑํ ์ ์ด๋ป๊ฒ ๋ง๋๋๊ฑธ๊น?
์ฑํ ์ด๋ผ๋ ๊ธฐ๋ฅ์ด ๋ง์๊ณณ์ ์ฌ์ฉ์ด ๋๊ณ ์๋๋ฐ์
์์ฆ ์ธ๊ธฐ๊ฐ ์๋ React Native๋ผ๋ ์น๊ตฌ๋ฅผ ์ด์ฉํด์ ๊ฐ๋จํ ์ฑํ ์ดํ์ ๋ง๋ค์ด ๋ณด๊ฒ ์ต๋๋ค.
์ ํฌ์คํ ์ JavaScript์ Android Studio์ ๋ํ ๊ฐ๋จํ ์ง์์ ์๊ตฌํฉ๋๋ค.
์ผ๋จ ์์ํ๊ธฐ ์ ์ ์ฐ๋ฆฌ๊ฐ ๋ง๋ค์ด ๋ณผ ์ดํ๋ฆฌ์ผ์ด์ ์ ๋ฐ๋ชจ ๋ถํฐ ๋ณด๊ณ ์์ํ๊ฒ ์ต๋๋ค.
์ถ์ฒ -- github GiftedChat
https://github.com/FaridSafi/react-native-gifted-chat
๊ฐ๋จํ๋ฉด์๋ ๊น๋ํ ๋์์ธ์ด ๋๋ณด์ด๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์
๋๋ค.
์ ์ดํ๋ฆฌ์ผ์ด์
์ ๋ง๋ค๊ธฐ ์ํ ์ค๋น๋ฌผ๋ค์ ์์๋ณด๊ฒ ์ต๋๋ค.
ํด๋ผ์ด์ธํธ
์๋ฒ
์ค์น๋ฐฉ๋ฒ
React Native + Node.js
FaceBook ์์ ๊ฐ๋ฐํ JS๊ธฐ๋ฐ ํ์ด๋ธ๋ฆฌ๋ ์น์ฑ ํ๋ ์์ํฌ ์
๋๋ค.
https://facebook.github.io/react-native/docs/getting-started.html
React Native ๋ฅผ ์ค์นํ๊ธฐ ์ํด์ ์ผ๋จ, 3๊ฐ์ง ํ๋ก๊ทธ๋จ์ ์ค์น๊ฐ ์ ํ๋์ด์ผํ๋๋ฐ์,
ย ย ย - Node.js
ย ย ย - python ( 2.7 ) * 3 ๋ฒ์ ์ ์ง์๋๋์ง ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค..
ย ย ย - jdk 8++
์ ํ๋ก๊ทธ๋จ๋ค์ ๊ฐ๋ณ์ ์ผ๋ก ์ค์นํ์๊ฑฐ๋, ํ๋ฒ์ ์ค์นํ๋ ๋ฐฉ๋ฒ์ด ์๋๋ฐ์.
ํ๋ฒ์ ์ค์นํ๋๊ฒ์ Chocolatey ๋ผ๋ ์น๊ตฌ๋ฅผ ์ด์ฉํด์ ์ค์นํ๋ฉด ๋ฉ๋๋ค.
CMD ์ฐฝ์ ๊ด๋ฆฌ์๊ถํ์ผ๋ก ์ด์ด์ฃผ์๊ณ ,
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
์ ๋ช
๋ น์ด๋ฅผ ๋ณต์ฌํด์ ๋ถ์ฌ๋ฃ๊ธฐ ํด์ฃผ์ ๋ค์, ์ํฐ๋ฅผ ๋๋ฌ์ฃผ์๋ฉด ์ค์น๊ฐ ์์๋ฉ๋๋ค.
๊ทธ ๋ค์ ์ค์น๊ฐ ์๋ฃ๋๋ฉด cmd์ฐฝ์ ์ฌ์คํ ์ํจ๋ค(์ฌ์คํ ํด์ผ choco๋ฅผ ์ด์ฉํ ์์์ด์)
choco install -y nodejs.install python2 jdk8
์ด๋ผ๋ ๋ช
๋ น์ด๋ฅผ cmd ์ฐฝ์ ์
๋ ฅํด์ฃผ์ธ์, (๊ด๋ฆฌ์ ๊ถํ)
(*๋ง์ฝ ๋ฏธ๋ฆฌ ์ค์น๊ฐ ๋์ด์๋ ํ๋ก๊ทธ๋จ์ด ์์ผ๋ฉด ๋นผ์ฃผ์ธ์)
์ด์ React Native ํ๋ก์ ํธ๋ฅผ ๋ง๋ค์ด์ฃผ๋ npm ๋
ธ๋ ๋ชจ๋์ ์ค์นํ ๊ฒ๋๋ค.
" npm install -g react-native-cli " ๋ฅผ cmd ์ฐฝ์์ ์
๋ ฅํด์ฃผ์ธ์,
๋ฐฉ๊ธ ์ค์นํ ๋ชจ๋์ ์๋๋ก์ด๋ ์คํ๋์ค๋ก ์น๋ฉด New Project ๊ฐ์ ๊ธฐ๋ฅ์ ํด์ค๋๋ค.
ํ๋ก์ ํธ๋ฅผ ๋ด์๋ ํด๋๋ฅผ ํ๋ ๋ง๋ค์ด์ฃผ์ธ์, cmd์ ์ต์ํด์ ธ์ผ ํ๊ธฐ ๋๋ฌธ์ cmd๋ก ํ๋ฒ ํด๋ณด๊ฒ ์ต๋๋ค.
cmd๋ก ์๋ง์ ๊ฒฝ๋ก๋ก ์ด๋ํ ๋ค, " mkdir ํด๋์ด๋ฆ " ์ ์
๋ ฅํด์ฃผ์ธ์
๊ทธ๋ค์, ์์ฑํ ํด๋๋ก ์ด๋ํด์ฃผ์ธ์ ( *** ํด๋ ๊ฒฝ๋ก ์ด๋ ๋ช
๋ น์ด๋ cd์
๋๋ค)
์ด์ React Project๋ฅผ ๋ง๋ค์ด ๋ณผํ
๋ฐ์, ์ด๋ํ ํด๋์์
" react-native init ํ๋ก์ ํธ์ด๋ฆ " ์ผ๋ก ํ๋ก์ ํธ๋ฅผ ์์ฑํด ์ฃผ์ธ์. ( ์๊ฐ์ด ์ฝ๊ฐ ๊ฑธ๋ฆฝ๋๋ค )
์ด์ ํ๋ก์ ํธ๋ฅผ ๋ง๋ค์ด ์ค์นํ๊ธฐ ์ํ ์์
์ ์์ํ๊ฒ ์ต๋๋ค.
ํ๋ก์ ํธ๋ฅผ ์ปดํ์ผ ํ๊ธฐ ์ํด์๋ Android SDK๊ฐ ํ์ํ๋ฐ์, Android Studio๋ฅผ ์ค์นํด ์ฃผ์ธ์.
https://developer.android.com/studio/index.html
๊ทธ ๋ค์, SDK Manager๋ผ๋ ๊ณณ์ ๋ค์ด๊ฐ ์๋ 4๊ฐ์ง๋ฅผ ์ค์นํ์๋ฉด ๋ฉ๋๋ค.
ย ย ย - Google APIs
ย ย ย - Android SDK Platform 23
ย ย ย - Intel x86 Atom_64 System Image
ย ย ย - Google APIs Intel x86 Atom_64 System Image
๊ฐ์ User ์ด๋ฆ์ ๋ง๊ฒ ์์คํ
ํ๊ฒฝ๋ณ์๋ ์ถ๊ฐํด์ฃผ์ธ์
์ด์ ํ๋ก์ ํธ๋ฅผ ์ปดํ์ผ ํ๊ธฐ ์ํ ๋ชจ๋ ์ค๋น๊ฐ ๋๋ฌ์ต๋๋ค.
๊ฐ์ ๊ธฐ๊ธฐ๋ฅผ ๋์ฐ๊ฑฐ๋, ์ค์ ๊ธฐ๊ธฐ๋ฅผ ์ฐ๊ฒฐํ ํ usb ๋๋ฒ๊น
์ฒดํฌํด์ฃผ๊ณ ,
cmd์์ ์๊น ํ๋ก์ ํธ๋ฅผ init ํ๋ ๋๋ ํ ๋ฆฌ๋ก ๋ค์ด๊ฐ
" react-native run-android" ๋ฅผ cmd ์ฐฝ์์ ์
๋ ฅํด์ฃผ์ธ์.
์๋์ ๊ฐ์ ํ๋ฉด์ด ๋ด๋ค๋ฉด ์ฑ๊ณต์
๋๋ค.
Visual Studio Code
์ฝ๋๋ฅผ ์
๋ ฅํ๊ณ ์์ ํ๊ธฐ ์ํด์ editor๊ฐ ํ์ํ๋ฐ์, ์ ๋ ์ด ์๋ํฐ๊ฐ ๊ฐ์ฅ ๊ฐ๋ณ๊ณ ํธํ๊ฒ ๊ฐ์ต๋๋ค.
https://code.visualstudio.com/
GiftedChat ์ค์นํ๊ธฐ.
GiftedChat์ ์ฑํ
ui ๋ผ์ด๋ธ๋ฌ๋ฆฌ์
๋๋ค.
GiftedChat github : https://github.com/FaridSafi/react-native-gifted-chat
๊นํ๋ธ ํ์ด์ง์ ๋ฉ์๋๋ ์์ ์ฝ๋๊ฐ ๋ง์ผ๋ ์ด๊ณณ์ ์ฐธ์กฐํ์๋ฉด ์ข ๋ ํฅ์๋ ui๋ฅผ ์ ์ํ ์ ์์ต๋๋ค.
์ด์ ํ๋ก์ ํธ์ GiftedChat์ ์ค์นํ๊ธฐ ์ํด ์๊น ๋ง๋ค์ด ๋์๋ ํด๋๋ฅผ ๋ค์ด๊ฐ์ฃผ์ธ์,
๊ทธ๋ค์ cmd์์ " npm install react-native-gifted-chat --save " ๋ฅผ ์
๋ ฅํด์ ์ค์นํด์ฃผ์ธ์.
์ด ๊ณผ์ ๊น์ง ๋ค ๋ง์น์๋ฉด ์ฑํ
์ดํ์ ๋ง๋ค๊ธฐ ์ํ ์ค๋น๊ฐ ๋ชจ๋ ๋๋ฌ์ต๋๋ค
์ผ๋จ ์ด๋ฒ ํฌ์คํ
์์๋ ๊ฐ๋ฐํด ์ค์น์ ๊ฐ๋จํ ์ค๋ช
์ ํ๋๋ฐ์
๊ธด ๊ธ ์ฝ์ด์ฃผ์
์ ๊ฐ์ฌํ๊ณ ๋ค์ ํฌ์คํ
๋ถํฐ ๋ณธ๊ฒฉ์ ์ธ ๊ฐ๋ฐ์ ๋ค์ด๊ฐ ๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค.
์ค์นํ์๋ฉด์ ์๋๋์ ์ด๋ ์ค๋ฅ๋ ์ผ๋ง๋ ์ง ๋๊ธ๋ก ๋ฌผ์ด๋ด์ฃผ์ธ์!