웹뷰 스터디를 진행하면서 딥링크도 구현해 볼 수 있는 기회를 얻었다. 이전부터 웹뷰 앱을 만든다면 정말 중요하게 생각할만한 포인트 중 하나가 딥링크라고 들었다. 이번에 딥링크를 공부해보니 신기하고 재밌었다. 근데 레퍼런스가 너무 없어서 정신 나갈 뻔.. 딥링크일단 딥링크에 대해서 알아보자. 딥링크란 특정 앱으로 이동시키는 동작을 의미한다. 우리가 무신사 앱에서 결제 버튼을 누르면 토스 앱으로 넘어가는 동작 같은 걸 상상하면 될 거 같다. 물론 앱뿐만 아니라 웹에서도 가능하다. 모바일 기기 브라우저에서 특정 버튼을 누르면 앱이 열리고 특정 앱 화면으로 전환이 되는 동작 같은 거 말이다. 이번에 내가 구현해본 동작은 웹페이지에서 앱으로 전환하는 동작이다. 아래 화면을 살펴보자. 오늘의 집 클론코딩한 페이지인..
이번에는 RNCWebViewManagerImpl 파일을 좀 더 자세히 살펴보자. 이전 글에서 설명했다시피 RNCWebViewManager에서는 UI와 관련된 기능 및 웹뷰 개별 인스턴스로 관리해야 하는 기능들이 들어가 있다고 했다.그래서 우리가 웹뷰 컴포넌트를 사용하며 너무나 자주 사용하는 injectJavascript, postMessage, onMessage와 같은 기능들이 다 여기 들어가 있는 것이다. 우리가 알아볼 코드는 아래 링크를 접속하면 볼 수 있다.https://github.com/react-native-webview/react-native-webview/blob/master/android/src/main/java/com/reactnativecommunity/webview/RNCWebVie..
이번엔 웹뷰 공부를 시작했다.사실 CMC 14기 스터디를 진행하면서 웹뷰 관련 과제를 진행해 본 적이 있었는데, 당시 너무 고통받았던 기억에 그 이후로 웹뷰 공부할 생각을 하지 않았다. 그런데 내가 생각하기에 웹뷰 공부를 꼭 해야하는 이유가 두 가지 있다.1. 토스, 당근, 캐치테이블 등 정말 많은 회사가 이미 구축되어 있는 웹을 기반으로 웹뷰 방식 앱을 사용하고 있다.2. 프론트엔드 전반적인 지식을 조금 더 활용해 볼 수 있는 환경이라고 생각한다. 사실 웹뷰를 사용하기만 해보면 의미가 없을 수 있는데, 웹뷰 내부 구조를 파고들면 파고들수록 새로운 개념이 나온다.이때, 웹에만 한정된 것이 아니라 모바일(aos, ios)까지 공부를 해보며 아키텍처나 동작 방식을 파악해 볼 수 있다.이 과정에서 배우는 점이..