AppMaster ๋ ธ์ฝ๋ ํ๋ซํผ ์ต์ ์ ๋ฐ์ดํธ | 2023๋ 5์
AppMaster.io์์ ์ต์ 5์ ์ ๋ฐ์ดํธ๋ฅผ ํ์ธํ์ธ์. ๊ฐ๋ฐ์์๊ฒ ๊ถํ์ ๋ถ์ฌํ๊ณ ์ฑ ์์ฑ ํ๋ก์ธ์ค๋ฅผ ๊ฐ์ํํ๋ ์๋ก์ด ๊ธฐ๋ฅ์ ์ดํด๋ณด์ธ์.

5์์ ๋ง๊ฐํ๋ฉด์ AppMaster.io์ ์ ๋ฐ์ดํธ ๋ฐ ๊ฐ์ ์ฌํญ์ ๊ฒํ ํ ๋์ ๋๋ค. ์ฐ๋ฆฌ ํ์ ์ฑ๋ฅ ํฅ์, ์๋ก์ด ๊ธฐ๋ฅ ๋์ , ์ฌ์ฉ์ ๊ฒฝํ ๊ฐ์ ์ ์ง์คํด ์์ต๋๋ค. ์ด ์ ๋ฐ์ดํธ๋ ์ด๋ฒ ๋ฌ ์งํ ์ํฉ์ ๋ํ ๊ฐ์๋ฅผ ์ ๊ณตํฉ๋๋ค.
์ ํธ๋ฆฌ๊ฑฐ
ํธ๋ฆฌ๊ฑฐ ์คํผ๋ง์ ํ์ฅ๊ณผ ๊ด๋ จ๋ ์ค์ํ ์ ๋ฐ์ดํธ๋ฅผ ๊ณต์ ํ๊ฒ ๋์ด ๊ธฐ์ฉ๋๋ค.
- WebView onLoadStarted : ์ด ์๋ก์ด ํธ๋ฆฌ๊ฑฐ๋ WebView๊ฐ ์น ํ์ด์ง ๋ก๋๋ฅผ ์์ํ์๋ง์ ํ์ฑํ๋์ด ๋ก๋ ํ๋ก์ธ์ค๋ฅผ ๋ชจ๋ํฐ๋งํ๊ณ ์ ์ดํ ์ ์๋ ๊ธฐ๋ฅ์ ์ ๊ณตํ์ฌ ๊ถ๊ทน์ ์ผ๋ก ๋ณด๋ค ์ํํ ์ฌ์ฉ์ ๊ฒฝํ์ ์ ๊ณตํฉ๋๋ค.
- WebView onLoadFinished : ์ด ํธ๋ฆฌ๊ฑฐ๋ WebView๊ฐ ์น ํ์ด์ง ๋ก๋๋ฅผ ์ฑ๊ณต์ ์ผ๋ก ์๋ฃํ์ ๋ ํ์ฑํ๋ฉ๋๋ค. ์ด ํธ๋ฆฌ๊ฑฐ๋ฅผ ํตํฉํ๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ๋ด์์ ์๋ฆผ์ ํ์ํ๊ฑฐ๋ ๋ค๋ฅธ ๊ตฌ์ฑ ์์๋ฅผ ํธ๋ฆฌ๊ฑฐํ๋ ๋ฑ ๋ก๋ ํ ์์ ์ ์ค์ ํ ์ ์์ต๋๋ค.
- WebView onPostMessageReceived : WebView์์ ๋ฉ์์ง๋ฅผ ์์ ํ๋ ๊ธฐ๋ฅ์ ํฅ์์์ผ ์น ํ์ด์ง์์ ๊ฒ์ ๋ฉ์์ง๋ฅผ ์์ ํ๋ฉด ์ด ํธ๋ฆฌ๊ฑฐ๊ฐ ํ์ฑํ๋ฉ๋๋ค. ์ด๋ ์ ํ๋ฆฌ์ผ์ด์ ๋ด์์ ๋ณด๋ค ๋ณต์กํ ์ํธ ์์ฉ ๋ฐ ์ปค๋ฎค๋์ผ์ด์ ์ ์ํ ๊ธธ์ ์ด์ด ์ฌ์ฉ์ ์ฐธ์ฌ๋ฅผ ์ ๋ํฉ๋๋ค.
- SCREEN_ON_BACK_BUTTON_PRESSED : ์ด ํธ๋ฆฌ๊ฑฐ๋ฅผ ์ถ๊ฐํ๋ฉด Android ์ฑ ๋ด์์ ๋ณด๋ค ์ง๊ด์ ์ธ ์ฌ์ฉ์ ํ์์ด ๊ฐ๋ฅํด์ง๋๋ค. ์ด ํธ๋ฆฌ๊ฑฐ๋ ์ฑ์ด ํ๋ฉด์ ์๋ ๋์ ๊ธฐ๊ธฐ์ ๋ค๋ก ๋ฒํผ์ ๋๋ฅผ ๋ ํ์ฑํ๋์ด ํ์ฌ ํ๋ฉด์ ๋ซ๊ฑฐ๋, ๋ค๋ฅธ ํ๋ฉด์ ์ด๊ฑฐ๋, ์ํ๋ ๋ค๋ฅธ ์์ ์ ์คํํ ์ง ์ฌ๋ถ์ ๊ฐ์ ๋์์ ์ฌ์ฉ์ ์ง์ ํ ์ ์์ต๋๋ค.
์ด๋ฌํ ์๋ก์ด ํธ๋ฆฌ๊ฑฐ๋ ์ฌ์ฉ์ ์ง์ , ์ํธ ์์ฉ ๋ฐ ์ ์ฒด ์์ฉ ํ๋ก๊ทธ๋จ ๊ธฐ๋ฅ์ ๋ํ ์ถ๊ฐ ๊ธฐํ๋ฅผ ์ ๊ณตํฉ๋๋ค. ์ฐ๋ฆฌ๋ ์ด๋ฌํ ๊ฐ์ ์ฌํญ์ด ์์ฐ์ฑ์ ์ฆํญ์ํฌ ๋ฟ๋ง ์๋๋ผ ๋ณด๋ค ๋์ ์ด๊ณ ๋ํ์์ด๋ฉฐ ์ฌ์ฉ์ ์ค์ฌ์ ์ธ ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ตฌ์ถํ๋ ๋ฐ ๊ธฐ์ฌํ ๊ฒ์ด๋ผ๊ณ ๊ตณ๊ฒ ๋ฏฟ์ต๋๋ค.
์ ๋ธ๋ก
์ฐ๋ฆฌ๋ 3๊ฐ์ ์๋ก์ด ๋ธ๋ก์ ์๊ฐํ๊ฒ ๋์ด ๊ธฐ์ฉ๋๋ค.
- WebView PostMessage : ์ด ์๋ก์ด ๋ธ๋ก์ ์ฌ์ฉํ๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์์ WebView ๊ตฌ์ฑ ์์ ๋ด์ ํฌํจ๋ ์น ํ์ด์ง๋ก ์ ๋ณด๋ฅผ ๋ณด๋ผ ์ ์์ต๋๋ค. WebView PostMessage ๋ธ๋ก์ ํ์ฉํ๋ฉด ์ ํ๋ฆฌ์ผ์ด์ ์ ์ํธ์์ฉ์ฑ๊ณผ ๋ณต์ก์ฑ์ ๊ฐ์ ํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ๊ณผ ์น ์ฝํ ์ธ ๊ฐ์ ๋ณด๋ค ๋์ ์ธ ํต์ ์ ํ์ฉํ์ฌ ์ฌ์ฉ์ ์ฐธ์ฌ๋ฅผ ๋์ผ ์ ์์ต๋๋ค.
- WebView GoBack : ์ด ๋ธ๋ก์ ๋์ ์ WebView ๊ตฌ์ฑ ์์ ๋ด์์ ๋ ๋์ ํ์์ ์ฉ์ดํ๊ฒ ํ๊ธฐ ์ํ ์ง์ ์ ์ธ ์๋ต์ ๋๋ค. WebView GoBack ๋ธ๋ก์ด ํธ๋ฆฌ๊ฑฐ๋๋ฉด WebView ๊ตฌ์ฑ ์์๊ฐ ์ด์ ์ ๋ก๋ํ ์น ํ์ด์ง๋ก ๋ค์ ์ด๋ํ๋๋ก ์ง์ํฉ๋๋ค. ์ด๋ ๋๋ถ๋ถ์ ์น ๋ธ๋ผ์ฐ์ ์์ ๋ณผ ์ ์๋ ์น์ํ ๋ค๋ก ํ์๊ณผ ์ผ์นํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ๋ด์์ ๋ณด๋ค ๋ถ๋๋ฝ๊ณ ์ง๊ด์ ์ธ ๋ธ๋ผ์ฐ์ง ๊ฒฝํ์ ์ด์งํฉ๋๋ค.
- ์์คํ : ๋ค๋ก ๋ฒํผ ๋๋ฅด๊ธฐ : ๋ณด๋ค ์ผ๊ด๋ ์ฌ์ฉ์ ๊ฒฝํ์ ์ ๊ณตํ๊ธฐ ์ํด ์์คํ : ๋ค๋ก ๋ฒํผ ๋๋ฅด๊ธฐ ๋ธ๋ก์ ์ถ๊ฐํ์ต๋๋ค. ์ด ๋ธ๋ก์ ์ฌ์ฉํ๋ฉด ๊ธฐ๊ธฐ์ ๋ค๋ก ๋ฒํผ์ ๋๋ ์ ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ด ์ ์ ํ๊ฒ ์๋ตํ์ฌ ํ์ค Android ๋์๊ณผ ์ผ์นํ๋ ๋ณด๋ค ์ง๊ด์ ์ธ ๋ด๋น๊ฒ์ด์ ์์คํ ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
- ํ๋ฉด์ ๋ํ ์์ฑ ๊ฐ์ ธ์ค๊ธฐ ๋ธ๋ก : ์ด ์๋ก์ด ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ฉด ์์ฉ ํ๋ก๊ทธ๋จ ๋ด์์ ํ๋ฉด์ ํ์ฌ ์ํ์ ์์ฑ์ ๊ฒ์ํ ์ ์์ต๋๋ค. ํ๋ฉด ๊ฐ์์ฑ, ๋ฐฉํฅ ๋๋ ๊ธฐํ ์์ฑ์ ์ํ๋ฅผ ์ดํดํ๋์ง ์ฌ๋ถ์ ๊ด๊ณ์์ด ์ด ๋ธ๋ก์ ์ค์๊ฐ ์ ๋ณด๋ฅผ ์ ๊ณตํ์ฌ ํ์ฌ ํ๋ฉด ์กฐ๊ฑด์ ๊ธฐ๋ฐ์ผ๋ก ๋ณด๋ค ๋์ ์ธ ์ฑ ์ํธ ์์ฉ ๋ฐ ์์ฌ ๊ฒฐ์ ํ๋ก์ธ์ค๋ฅผ ์ด์งํฉ๋๋ค.
- ํ๋ฉด์ ์์ฑ ์ ๋ฐ์ดํธ ๋ธ๋ก : ์ด ๋ธ๋ก์ ํ๋ฉด ์์ฑ์ ๋์ ์ผ๋ก ์กฐ์ํ ์ ์๋ ๊ธฐ๋ฅ์ ๋ถ์ฌํฉ๋๋ค. ํ๋ฉด์ ๊ฐ์์ฑ, ๋ฐฉํฅ ๋๋ ๊ธฐํ ํน์ฑ์ ์์ ํ๋ ค๋ ๊ฒฝ์ฐ ์ด ๋๊ตฌ๋ฅผ ์ฌ์ฉํ๋ฉด ์ฌ์ฉ์ ์์ ๋๋ ๊ธฐํ ์ด๋ฒคํธ์ ๋ํ ์๋ต์ผ๋ก ์ ํ๋ฆฌ์ผ์ด์ ์ ๊ธฐ๋ฅ๊ณผ ์ฌ์ฉ์ ๊ฒฝํ์ ์กฐ์ ํ๊ณ ์ต์ ํํ ์ ์์ต๋๋ค.
์๋๋ก์ด๋์ฉ ์ ๋ฐ์ดํธ
Android ํ๋ซํผ ์ ๋ฐ์ดํธ๋ฅผ ๋ฐํํ๊ฒ ๋ ๊ฒ์ ๊ธฐ์๊ฒ ์๊ฐํฉ๋๋ค. ํ์น ํฌ ์ค(Pinch to Zoom) ๊ธฐ๋ฅ์ด ์ด๋ฏธ์ง์ ํฌํจ๋ฉ๋๋ค. ์ด ์๋ก์ด ๊ธฐ๋ฅ์ ๊ฐ๋จํ ์๊ฐ๋ฝ ์์ง์์ ํตํด ์ด๋ฏธ์ง๋ฅผ ๋ ์์ธํ ๋ณด๊ฑฐ๋ ๋ ๋๊ฒ ๋ณผ ์ ์๋๋ก ํ์ฌ ์ฌ์ฉ์ ์ํธ ์์ฉ์ ํฅ์์ํต๋๋ค. ์ฐ๋ฆฌ ํ์ ์ด๋ฏธ์ง ํ์ง๊ณผ ์ ํ๋ฆฌ์ผ์ด์ ์ฑ๋ฅ์ ์ ์งํ๊ธฐ ์ํด ์ด ๊ธฐ๋ฅ์ ์ ์คํ๊ฒ ๊ฐ๋ฐํ์ต๋๋ค.
IOS์ฉ ์ ๋ฐ์ดํธ
- HTTP ์์ฒญ์ ๋ํ ๋ธ๋ก ์ง์ ์ถ๊ฐ. ์ด ์ ๊ทธ๋ ์ด๋๋ ์ฑ์ ๋คํธ์ํน ๊ธฐ๋ฅ์ ํ์ฅํ์ฌ ์ฑ์ด ์๋ฒ ๋ฐ API์ ์ํธ ์์ฉํ๊ณ ๋ฐ์ดํฐ๋ฅผ ์ก์์ ํ๋ ๋ฑ์ ์์ ์ ์ํํ ์ ์๋๋ก ํฉ๋๋ค. HTTP ์์ฒญ ๋ธ๋ก ์ง์์ ํตํด ์ด์ ๋ณด๋ค ๋์ ์ด๊ณ ์ฐ๊ฒฐ๋ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ค๊ณํ์ฌ ์ฌ์ฉ์ ๊ฒฝํ์ ํ๋ถํ๊ฒ ํ ์ ์์ต๋๋ค.
- ์ ํ๋ฆฌ์ผ์ด์ ์์ ์๋๊ฐ ์ต์ ํ๋์ด ์์ ํ๋ก์ธ์ค๊ฐ 3๋ฐฐ ๋นจ๋ผ์ก์ต๋๋ค.
์น ์ ๋ฐ์ดํธ
HTTP ์์ฒญ ๋ธ๋ก์ ๋ํ ์ฟผ๋ฆฌ ๋งค๊ฐ๋ณ์ ์ง์ ํฌํจ. ์ด ์ถ๊ฐ ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ฉด HTTP ์์ฒญ์ ์ฟผ๋ฆฌ ๋งค๊ฐ๋ณ์๋ฅผ ์ถ๊ฐํ์ฌ ๋ณด๋ค ์ ํํ๊ณ ์ ์ด๋ ์๋ฒ ์ํธ ์์ฉ์ ์ฉ์ดํ๊ฒ ํ ์ ์์ต๋๋ค. ์ฟผ๋ฆฌ ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ๋ฉด ํน์ ๋ฐ์ดํฐ๋ฅผ ๊ฒ์ํ๋๋ก ์์ฒญ์ ๋ง์ถคํํ์ฌ ์ฑ์ ๊ธฐ๋ฅ๊ณผ ์ฌ์ฉ์ ํ๊ฒฝ์ ํฌ๊ฒ ๊ฐ์ ํ ์ ์์ต๋๋ค.
๊ฐ์ ๋ชจ๋ธ ์ง์
๊ฐ์ ๋ชจ๋ธ ์ง์ - ๋ฐ์ดํฐ ์ฒ๋ฆฌ ๋ฐ ํ๋ฆฌ์ ํ ์ด์ ์ ์ํ ์ ์ฐ์ฑ ํฅ์. ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ฉด ๋ฐ์ดํฐ๋ฒ ์ด์ค ๊ตฌ์กฐ์ ๊ตญํ๋์ง ์๊ณ ์ธ๋ถ ๋ฐ์ดํฐ ์์ค ๋ฐ ์ฌ์ฉ์ ์ง์ ๋ฐ์ดํฐ ์ฒ๋ฆฌ์ ์ํํ๊ฒ ํตํฉํ ์ ์์ต๋๋ค. ๊ฐ์ ๋ชจ๋ธ์ ๋ค์ํ ์ฌ์ฉ ์ฌ๋ก์ ์ ๊ธ์ ํด์ ํ๊ณ ์ต์ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ํ ์ ์์ฑ์ ๊ฐํํ์ฌ ํ๋ก์ ํธ ์ฑ๋ฅ์ ํ ๋จ๊ณ ๋์ด์ฌ๋ฆฝ๋๋ค.
์ผ๋ฐ ์ ๋ฐ์ดํธ
- ๋ชจ๋ BP ํธ์ง๊ธฐ์์ ๋ธ๋ก์ ๋ํ ์ฃผ์์ ์์ฑํ๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ์ต๋๋ค. ์ด์ ๊ฐ๋ฐ ์ฃผ๊ธฐ ์ ์ฒด์ ์ฃผ์์ ํตํฉํ์ฌ ์์ ํ๋ฆ ํจ์จ์ฑ์ ํฅ์์ํฌ ์ ์์ต๋๋ค.
- ์น, ๋ฐฑ์๋, ๋ชจ๋ฐ์ผ ๋ฑ ๋ชจ๋ ํ๋ซํผ์์ ํ์ ๋ฒํธ ๋ธ๋ก์ด ์ถ๊ฐ๋์์ต๋๋ค. ์ด ๊ธฐ๋ฅ์ ์ฌ์ฉํ๋ฉด ์ซ์ ๋ฐ์ดํฐ๋ฅผ ๋ณด๋ค ํจ์จ์ ์ผ๋ก ์กฐ์ํ ์ ์์ผ๋ฉฐ ํ์์ ๋ฐ๋ผ ์ซ์ ํ์๋ฅผ ์ฌ์ฉ์ ์ ์ํ ์ ์๋ ์ต์ ์ ์ ๊ณตํฉ๋๋ค. ์์์ ์ดํ ์๋ฆฟ์ ์ ์ด, ์์์ ๊ตฌ๋ถ ๊ธฐํธ ์ ์ ๋๋ ์ฒ ๋จ์ ๊ตฌ๋ถ ๊ธฐํธ ์กฐ์ ์ฌ๋ถ์ ๊ด๊ณ์์ด ํ์ ๋ฒํธ ๋ธ๋ก์ ์ฌ์ฉํ๋ฉด ๋ณด๋ค ์ ํํ ๋ฐ์ดํฐ ํ์๊ฐ ๊ฐ๋ฅํฉ๋๋ค.
- ์ ๋ฐ์ดํธ๋ ๋์์ด๋์ BP๋ ๋๋ธ ํด๋ฆญ ๊ธฐ๋ฅ์ ํตํด ๋น์ฆ๋์ค ํ๋ก์ธ์ค(BP) ๊ฐ ์ํํ ํ์์ ์ ๊ณตํ์ฌ ํจ์จ์ฑ๊ณผ ์ฌ์ฉ์ ๊ฒฝํ์ ํฅ์์ํต๋๋ค. ์ด ๊ฐ์ํ๋ ์ ๊ทผ ๋ฐฉ์์ ํตํด ์ฒญ์ฌ์ง์ ๋ค๋ฅธ ๊ธฐ๋ฅ์ผ๋ก ์ ์ํ๊ฒ ํตํฉํ ์ ์์ด ์ฌ์ฉ์๊ฐ ์ ๋ฌธ์ ์ธ ์ธํฐํ์ด์ค๋ฅผ ์ ์งํ๋ฉด์ ๋ณต์กํ๊ณ ์ํธ ์ฐ๊ฒฐ๋ ์ํฌํ๋ก์ฐ๋ฅผ ๊ตฌ์ถํ ์ ์์ต๋๋ค.
5์์ ์๋นํ ๊ฐ์ ์ด ์ด๋ฃจ์ด์ก์ง๋ง ๋ค์ ๋ฌ์๋ ๋ ๋ง์ ๊ฒ์ ๋ฌ์ฑํ๊ธฐ๋ก ๊ฒฐ์ ํ์ต๋๋ค. ๊ฒฐํจ์ ๋ณด๊ณ ํ๊ณ , ํ์ ์ ์ธ ๊ฐ๋ ์ ์ ์ํ๊ณ , ๊ฐ์น ์๋ค๊ณ ์๊ฐํ๋ ๊ธฐ๋ฅ์ ๋ณด์ฆํ๋ ๋ฑ ๊ทํ์ ์ง์์ ์ธ ์ง์์ ์์กดํฉ๋๋ค. ๊ทํ์ ์ฐธ์ฌ๋ ์ฐ๋ฆฌ๊ฐ ์ ํ์ ์ง์์ ์ผ๋ก ๊ฐ์ ํ๊ณ ์ ๊ทธ๋ ์ด๋ํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.


