Android 맞춤 탭 개요

맞춤 탭은 Android 브라우저의 기능으로, 앱 개발자가 앱 내에서 직접 맞춤설정된 브라우저 환경을 추가할 수 있는 방법을 제공합니다.

웹 콘텐츠 로드는 스마트폰 초기부터 모바일 앱의 일부였지만 이전 옵션은 개발자에게 어려움을 줄 수 있습니다. 실제 브라우저를 실행하는 것은 맞춤설정이 불가능한 사용자에게는 부담이 되는 컨텍스트 전환이지만 WebView는 웹 플랫폼의 일부 기능을 지원하지 않으며 브라우저와 상태를 공유하지 않고 유지보수 오버헤드를 추가합니다.

맞춤 탭을 사용하면 사용자가 탐색 중에 앱 내에 머무를 수 있으므로 참여도가 높아지고 사용자가 앱을 이탈할 위험이 줄어듭니다. 맞춤 탭은 사용자가 선호하는 브라우저에서 직접 구동하여 이를 달성하고 앱에서 제공하는 상태와 기능을 자동으로 공유합니다. 요청, 권한 부여 또는 쿠키 저장소를 관리하기 위해 맞춤 코드를 작성하지 않아도 됩니다.

맞춤 탭은 무엇을 할 수 있나요?

맞춤 탭을 사용하면 사용자의 기본 브라우저를 지원하는 모든 렌더링 엔진에서 웹 콘텐츠가 로드됩니다. 모든 API 또는 웹 플랫폼 기능을 여기에서 사용할 수 있으며 맞춤 탭에서도 사용할 수 있습니다. 탐색 세션, 저장된 비밀번호, 결제 수단, 주소가 모두 이미 익숙한 방식으로 표시됩니다.

맞춤 탭에서 무엇을 맞춤설정할 수 있나요?

상당히 많습니다. 맞춤 탭을 사용하면 다양한 브라우저 Chrome 및 사용자 환경을 세밀하게 제어할 수 있습니다. 앱 내에서 인텐트를 사용하여 맞춤 탭을 실행합니다. 이 인텐트가 호출되면 CustomTabIntent에 여러 속성을 추가하여 원하는 환경을 정확하게 가져올 수 있습니다. 추가할 수 있는 맞춤설정은 다음과 같습니다.

  • 앱의 나머지 부분과 일치하는 맞춤 시작 및 종료 애니메이션
  • 앱의 브랜딩에 맞게 툴바 색상 수정
  • 밝은 테마와 어두운 테마 간에 전환해도 앱에 유지되는 색상 일관성
  • 브라우저의 툴바와 메뉴에 대한 맞춤 작업 및 항목
  • 맞춤 탭의 실행 높이를 제어하여 웹 스토어와 상호작용하는 동안 동영상을 스트리밍하는 등의 작업을 할 수 있습니다.

또한 사용자는 맞춤 탭을 최소화하여 기본 앱과 상호작용할 수 있으며, 진행 상황을 잃지 않고 언제든지 복원하여 여정을 재개할 수 있습니다. 이를 통해 사용자는 맞춤 탭을 닫는 대신 웹과 네이티브 앱 간에 원활하게 멀티태스킹할 수 있습니다. 이 기능은 맞춤 탭에 기본적으로 사용 설정되어 있습니다.

그건 전부가 아닙니다. 맞춤 탭은 매우 강력하며 현재 개발 중입니다. 각 브라우저는 이러한 기능이 제공될 때마다 지원을 추가해야 합니다. 거의 모든 브라우저에서 어느 정도 지원되지만 사용자의 브라우저에서 사용할 수 있는 기능과 사용할 수 없는 기능을 파악하는 것이 중요합니다. 많이 사용되는 Android 브라우저에서 다양한 기능을 사용할 수 있는지 빠르게 확인하려면 기능 비교 표를 참고하세요.

지금 GitHub의 샘플을 사용하여 테스트해 보세요.

맞춤 탭은 언제 사용해야 하나요?

웹 콘텐츠를 로드하는 '올바른' 방법은 하나가 아닙니다. 특정 상황에서는 WebView가 사용하기에 적합한 기술이 될 것입니다. 예를 들어 앱 내에서 자체 콘텐츠를 독점적으로 호스팅하거나 앱에서 직접 JavaScript를 삽입해야 하는 경우입니다. 앱에서 사용자를 도메인 외부의 URL로 안내하는 경우 맞춤 탭의 내장 공유 상태가 더 나은 선택일 수 있습니다. 맞춤 탭의 다른 장점은 다음과 같습니다.

  1. 보안: 맞춤 탭은 Google의 세이프 브라우징을 사용하여 사용자와 기기를 위험한 사이트로부터 보호합니다.
  2. 성능 최적화:
    1. 애플리케이션에서 리소스를 훔치는 것을 방지하면서 백그라운드에서 브라우저를 미리 예열합니다.
    2. URL을 미리 추측 로드하여 페이지 로드 속도를 높입니다.
  3. 수명 주기 관리: 맞춤 탭을 실행하는 앱은 탭 사용 중에 시스템에서 제거되지 않습니다. 중요도가 '포그라운드' 수준으로 올라갑니다.
  4. 공유 쿠키 저장소 및 권한 모델을 통해 사용자가 이미 연결된 사이트에 로그인하거나 이미 부여한 권한을 다시 부여하지 않아도 됩니다.
  5. 양식 작성을 개선하기 위한 자동 완성과 같은 브라우저 기능을 즉시 사용할 수 있습니다.
  6. 사용자는 통합된 뒤로 버튼을 사용하여 앱으로 돌아갈 수 있습니다.

맞춤 탭과 신뢰할 수 있는 웹 활동 비교

신뢰할 수 있는 웹 활동은 맞춤 탭 프로토콜을 확장하며 대부분의 이점을 공유합니다. 하지만 맞춤설정된 UI를 제공하는 대신 개발자가 UI를 전혀 사용하지 않고 브라우저 탭을 열 수 있습니다. 자체 Android 앱 내에서 자체 프로그레시브 웹 앱을 전체 화면으로 열려는 개발자에게 권장됩니다.

맞춤 탭은 어디에서 사용할 수 있나요?

맞춤 탭은 Android 플랫폼의 브라우저에서 지원하는 기능입니다. 이 기능은 Chrome 버전 45에서 처음 도입되었습니다. 이 프로토콜은 대부분의 Android 브라우저에서 지원됩니다.

Google은 이 프로젝트에 대한 의견, 질문, 제안을 기다리고 있습니다. crbug.com에서 문제를 신고하고 Twitter @ChromiumDev로 문의하시기 바랍니다.

시작하기

GitHub 데모 외에도 맞춤 탭을 시작하는 데 도움이 되는 여러 가이드가 있습니다.

질문이 있는 경우 StackOverflow에서 chrome-custom-tabs 태그를 확인하세요.