개발자는 Android를 통해 앱 내에서 웹의 기능을 활용하여 특정 유형의 콘텐츠를 표시할 수 있는 유연성과 효율성을 누릴 수 있습니다.
이를 통해 기존 웹 콘텐츠를 네이티브 Android 애플리케이션에 원활하게 통합하여 뉴스 피드를 표시하거나, 대화형 튜토리얼을 표시하거나, 광고를 표시하거나, 모든 것을 처음부터 빌드하지 않고도 미니 게임을 호스팅할 수 있습니다. 앱 내에서 인터넷으로 연결되는 창이라고 생각하면 됩니다. 앱에 웹 콘텐츠를 삽입하는 방법은 두 가지가 있습니다.
- WebView: UI를 맞춤설정하거나 업데이트할 때 높은 수준의 유연성이 필요한 위치에 인라인으로 제어하는 웹 콘텐츠를 표시합니다.
- 맞춤 탭: 사용자가 링크를 클릭할 때 외부 브라우저로 이동하는 대신 앱에 머물도록 하고 싶을 때 사용자의 기본 브라우저(브라우저 지원 참고)로 구동되는 전체 인앱 탐색 환경으로, 대부분의 탐색 환경이 기본적으로 제공됩니다.


웹 콘텐츠를 삽입해야 하는 이유
- 효율성: 웹사이트의 기존 코드를 재사용합니다. 기존 웹 기술과 콘텐츠를 기반으로 빌드합니다.
- 통합: 앱 내에서 미디어, 광고와 같은 서드 파티 제공업체의 외부 콘텐츠를 활용합니다.
- 유연성: 미리 정의된 UI에 제한되지 않거나 앱 업데이트를 출시하지 않고도 콘텐츠를 동적으로 업데이트할 수 있습니다.
웹 콘텐츠를 사용해야 하는 경우
Android 앱에서 웹을 사용하는 데는 세 가지 기본 사용 사례가 있습니다.
1. 웹 콘텐츠를 기본 또는 지원 콘텐츠로 앱에 삽입: WebView 사용
- UI를 맞춤설정하거나 업데이트할 때 높은 수준의 유연성이 필요한 경우 기본 환경으로 자체 웹 콘텐츠를 인라인으로 표시합니다.
- 광고, 법적 약관 및 규정 또는 기타 서드 파티 콘텐츠를 인라인으로 표시하거나 앱 환경 내에서 창으로 표시합니다.


2. 맞춤 탭 또는 WebView를 사용하여 인앱 브라우징(고급 사용 사례의 경우)
- 사용자가 링크를 클릭할 때 외부 브라우저로 이동하지 않고 앱에 머물도록 하려면 완전한 인앱 탐색 환경을 사용하세요.
- 참고: 태블릿, 폴더블과 같은 대형 화면 기기의 경우 앱이 추가 공간을 활용할 수 있도록 지원하는 추가 옵션이 있습니다.
- 앱은 인접한 멀티 윈도우 환경 실행을 사용하여 화면 분할로 웹 링크를 열 수 있습니다. 이를 통해 사용자는 앱과 브라우저 사이에서 동시에 멀티태스킹할 수 있습니다. 또는
- 맞춤 탭에는 동일한 태스크에서 열리지만 기존 앱 콘텐츠 옆에 표시되는 측면 패널 옵션이 있습니다.
- 맞춤 탭은 맞춤 탭을 지원하는 브라우저의 경우 사용자의 기본 브라우저로 구동됩니다.
- WebView를 사용하여 맞춤설정 가능성이 높은 인앱 탐색 환경을 제공할 수 있지만, 기본 브라우저 환경과 사용자가 브라우저에서 웹 링크를 열 때 원활한 전환을 위해서는 맞춤 탭을 사용하는 것이 좋습니다.

3. 앱 내 로그인 또는 인증 흐름
Android에서 권장하는 접근 방식은 인증 관리자를 사용하여 로그인 또는 인증 흐름을 빌드하는 것입니다. 이러한 환경에 여전히 삽입된 웹을 사용해야 하는 경우 다음 안내를 따르세요.
- 일부 앱은 WebView를 사용하여 앱에 특화된 사용자 이름과 패스키 (또는 비밀번호) 사용을 비롯한 사용자 로그인 흐름을 제공합니다. 이를 통해 개발자는 플랫폼 전반에서 인증 흐름을 통합할 수 있습니다.
- '다음으로 로그인'과 같은 서드 파티 ID 공급업체 또는 로그인 환경으로 연결할 때는 맞춤 탭을 사용하는 것이 좋습니다. 맞춤 탭을 실행하면 사용자의 사용자 인증 정보가 보호되고 서드 파티 사이트에 격리됩니다.
인증을 위해 WebView를 활용하는 방법에 관한 자세한 내용은 WebView로 사용자 인증을 참고하세요. 맞춤 탭 실행에 관한 내용은 Android 맞춤 탭 개요를 참고하세요.

